在c语言中 若有说明语句:int a,b,c,*d=&c;,则能正确从键盘读入三个整数分别赋给变量a、b、c的语句是?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了在c语言中 若有说明语句:int a,b,c,*d=&c;,则能正确从键盘读入三个整数分别赋给变量a、b、c的语句是?相关的知识,希望对你有一定的参考价值。

A.scanf(%d%d%d”,&a,&b,d);

对于int c,*d=&c;,c是一整型数据,d是一指针,它指向变量c(即d=&c,*是指针类型的说明符),所以,输入c的值可以用scanf("%d",&c); 也可以用scanf("%d",d);
参考技术A scanf函数中格式控制后面应为变量地址列表,因此选项C和选项D都错误,选项B中“&d”是指针变量d的地址,与题目不符。由题目可知指针变量d中存放的是变量c的地址,所以正确答案为选项A。 参考技术B scnaf("%d%d%d",&a,&b,%c) 参考技术C

在c语言中,若有说明语句:int a,b,c,*d=&c:,则能正确从键盘读入三个整数分别赋给变量a、b、c的语句是scanf("%d%d%d"&a,&b,)。

seanf()函数有两个参数,第一个参数是输入格式字符串,第二个参数是输入变量地址列表。输入格式字符串主要由“%”符号和格式字符组成,地址列表是由多个地址组成的。



扩展资料

scanf用法的一些注意点

1、函数原型:

# include <stdio.h> ;

intscanf(constchar*format,...);

函数scanf()是从标准输入流stdin中读内容的通用子程序,可以读入全部固有类型的数据并自动转换成机内形式。

在C99中,format用restrict修饰。

format指向的控制串由以下三类字符组成:格式说明符、空白符、非空白符。

2、在scanf()中最好不要加换行符\\n,即最好不要写成这样,会提醒让你输入两次。

因为用空白符结尾时,scanf会跳过空白符去读下一个字符,所以你必须再输入一个数。这里的空白符包括空格,制表符,换行符,回车符和换页符。

C语言选择题 以下四个程序中不能对两个整型值进行交换的是( )

A) main() int a=10,b=20; swap(&a,&b); printf("%d%d\n",a,b); swap(int *p,int *q) int *t,a; t=&a; *t=*p; *p=*q; *q=*t; B) main() int a=10,b=20; swap(&a,&b); printf("%d%d\n",a,b); swap(int *p,int *q) int t; t=*p; *p=*q; *q=t; C) main() int *a=0,*b=0; *a=10,*b=20; swap(a,b); printf("%d%d\n",*a,*b); swap(int *p,int *q) int t; t=*p; *p=*q; *q=t; D) main() int a=10,b=20,*x=0,*y=0; *x=&a, *y=&b; swap(x,y); printf("%d%d\n",a,b); swap(int *p, int *q) int t; t=*p; *p=*q; *q=t; 请给出详细解答,Thank you very much !!!!

参考技术A 程序C与D都不能运行,答案应该是有两个。
C)
main()

int
*a=0,*b=0;
*a=10,*b=20;
//这儿有错误,a与b没有指向作何对象,你确给对象赋值。
swap(a,b);
printf("%d%d\n",*a,*b);

swap(int
*p,int
*q)
int
t;
t=*p;
*p=*q;
*q=t;

D)
main()

int
a=10,b=20,*x=0,*y=0;
*x=&a,
*y=&b;
//这两个赋值错误。正确的是:x=&a,
y=&b;
swap(x,y);
printf("%d%d\n",a,b);

swap(int
*p,
int
*q)

int
t;
t=*p;
*p=*q;
*q=t;

以上是关于在c语言中 若有说明语句:int a,b,c,*d=&c;,则能正确从键盘读入三个整数分别赋给变量a、b、c的语句是?的主要内容,如果未能解决你的问题,请参考以下文章

c语言程序设计的基础题目求教,请给解析(多追积分)

C语言 main

c语言中a=a^b;这个语句是怎么计算的,举个例子说明

C语言中能否在一条定义语句中定义多个不同类型变量?举例说明

在c语言中整形变量的指针能否赋值给整形变量?

C语言 面试