‘壹’ c语言分析题
scanf函数的第二个参数为被赋值的地址,所以a+(i++) &a[i++]都正确
a+(i++)
C语言中,数组名是数组的首地址,而数组的线性结构,那么首地址加上增量就是增量元素的地址
&a[i++]
使用取地址运算符引用地址,众所周知
所以这2个答案都正确,如果是考试,建议选第二个
yeahrahxephon说c中输入必须有&的说法太可笑
‘贰’ c语言程序分析
通过word的变化,来控制num是否自加,当word等于1时,num自加。当遇到空格时,就把word变成0,直到再出现下一个字符时,world变回1,num加1,这样说你懂了吗
‘叁’ C语言程序分析题和编程题
####
###*
##**
#***
i 可控制列
输出(#)号i个
j在行中星号(*)根据i的值输出4-i个
300,200,100
f1()是自定义的函数,并对x y z 分别进行了初始化(默认值),在主函数中调用,当没有参数传递时,将这三个数进行输出,否则将输出传递过来的参数值
3 进行中
#include<stdio.h>
main()
{
int a[6] = { 9, 7, 5, 3, 1 }; //假设排序已进行
int t;
int i, j;
for(i = 0;i<5; i++)
printf("%d ",a[i]);
printf("\n");
printf("请输入您要插入的数字(1--9)【 】\b\b");
scanf("%d", &t);
for ( i = 0; i < 5; i++)
if( t>=a[i+1] && t<a[i] ) //小于前一个 而 大于后一个
{
for(j = 5; j >i; j--)
a[j] = a[j-1]; //重新赋值
a[i+1] = t;
break;
}
for(i = 0; i<=5; i++)
printf("%d ",a[i]);
printf("\n");
}
‘肆’ C语言程序分析题 int a,b; scanf("a=%d, b=%d",&a,&b); printf("\n");
执行格式化输入函数:scanf()。原型: int scanf(char *format[,argument,...]);
scanf()函数是通用终端格式化输入函数,它从标准输入设备(键盘) 读取输入的信息。可以读入任何固有类型的数据并自动把数值变换成适当的机内格式。
scanf()的格式控制串可以使用非空白字符,但在输入时必须输入这些字符。
例:
scanf("%d,%d",&a,&b);
输入: 3,4 ↙(逗号与"%d,%d"中的逗号对应)
scanf("a=%d,b=%d",&a,&b);
输入: a=3,b=4 ↙("a=","b=",逗号与"%d,%d"中的"a=","b="及逗号对应)
‘伍’ c语言,分析这段程序的意思
选择答案A。
int x[]={10,20,30},*px=x;
printf("%d ",++*px);printf("%d ",*px); //x[0]先变成11后输出,再输出一次11
px=x;
printf("%d ",(*px)++);printf("%d ",*px); //先输出x[0]即11后,x[0]变成12
px=x;
printf("%d ",*px++);printf("%d ",*px); //先输出x[0]即12,px指向x[1],接着输出20
px=x;
printf("%d ",*++px);printf("%d ",*px); //px先后移一位指向x[1]然后再输出20 20
‘陆’ c语言程序分析题
f中第一个参数是传值,编译器会复制一份a传递给函数f,复制的临时变量与a是两个不同的变量,它们的地址不同,此后f中的x与main中的变量a不再有任务关联
f的第二个参数是传地值,f中的y与b的地址在内存中是相同的,操作的是同一个地址
‘柒’ 单片机C语言设计程序分析题
lampa是定义一个全局变量,该变量在定义行之后的源程序的任何一个地方都可以使用。对于你这个程序,变量a只在mian函数中使用,其实完全可以把lampa,这句放在main函数中的第一句,while(1)这句之前。
‘捌’ C语言 程序分析题 求详解
这个程序应该是把
十进制数
转换成
二进制数
输出
#include
//
头文件
void
main()
{
int
a,b[10],c,i=0;
//
a存储待转换的十进制数,b[10]存储转换后的二进制位,
//
c
是存储
余数
,
printf("输入一个整数\n");
scanf("%d",&a);
//
输入需转换的十进制数
while(a!=0)
//
只要a不为零,就继续转换
{
c=a%2;
//
把a除以2
的余数赋值给c
a=a/2;
//
把商存入a进行下一次循环
b[i]=c;
//
把余数存到数组中作为二进制中的一位
i++;
}
for(;i>0;i--)
printf("%d",
b[i-1]);
//反向输出余数,即得到二进制
例如输入4
因为4
!=
0
4
/
2
=
2((商=a)...........0(余数=c=b[0])
因为2
!=
0
2
/
2
=
1((商=a)...........0(余数=c=b[1])
因为1
!=
0
1
/
2
=
0((商=a)...........1(余数=c=b[2])
因为
0
=
0
结束循环输出
b[2]
b[1]
b[0]
即
100,也就是二进制的
4
‘玖’ C语言程序分析题
*(*(p+i)+j)即p[i][j],等效于a[i][j]
‘拾’ C语言程序分析
这是一个计算器的程序,可以做加减乘除的基本运算(仅限整数范围内)