1)有以下程序 #include <stdio.h> main() { int a1,a2; char c1,c2; scanf(“%d%c%c”,&a1,&c1,&a2,&c2); printf(%d,%c,%d,%c,a1,c1,a2,c2); } 若想通过键盘输入,使得a1的

来源:学生作业帮助网 编辑:作业帮 时间:2024/11/18 02:44:58

1)有以下程序 #include <stdio.h> main() { int a1,a2; char c1,c2; scanf(“%d%c%c”,&a1,&c1,&a2,&c2); printf(%d,%c,%d,%c,a1,c1,a2,c2); } 若想通过键盘输入,使得a1的
1)有以下程序      #include <stdio.h>      main()      {  int  a1,a2; char c1,c2;         scanf(“%d%c%c”,&a1,&c1,&a2,&c2);         printf(%d,%c,%d,%c,a1,c1,a2,c2);      }      若想通过键盘输入,使得a1的值为12,a2的值为34,c1的值为字符a,c2的值为字符b,程序输出的结果是:12,a,34,b则正确的输入格式是(以下︿代表空格,<CR>代表回车)      A)12a34b<CR>                            B)12︿a︿34︿b<CR>      C)12,a,34,b<CR>                         D)12︿a34︿b<CR> 选A,为什么? 2)有以下程序#include <stdio.h>void fun( int *a,int *b){int *c;c=a;a=b;b=c;}main(){int x=3,y-5,*P=&x,*q=&y; fun(p,q);printf(“%d,%d,”,*p,*q);fun(&x,&y);printf(“%d,%d\n”,*p,*q);}程序运行后的输出结果是A)3,5,5,3   B)3,5,3,5   C)5,3,3,5   D)5,3,5,3 选B,为什么? 3)若有以下定义      int x[10],*pt=x;则对x数组元素的正确应用是A)*&x[10]    B)*(x+3)    C)*(pt+10)     D)pt+3 答案是B,为什么C不行? 4)#include <stdio.h>int b=2;int fun(int *k){ b=*k+b;return (b);}main(){ int a[10]={1,2,3,4,5,6,7,8},I;  for(i=2;i<4;i++) {b=fun(&a)+b;printf(“%d”,b);}  printf(“\n”);}程序运行后输出的结果是A)10  12     B)8   10     C)10   28     D)10   16 选C,为什么?

1)有以下程序 #include <stdio.h> main() { int a1,a2; char c1,c2; scanf(“%d%c%c”,&a1,&c1,&a2,&c2); printf(%d,%c,%d,%c,a1,c1,a2,c2); } 若想通过键盘输入,使得a1的
(1)因为scanf(“%d%c%d%c”,&a1,&c1,&a2,&c2);对应的输入格式为:12a34b
整型数据之间的输入用空格隔开 如scanf(“%d%d”,&a,&b):输入格式为:12 34
但若为字符型 不能用空格隔开 如scanf("%c%c",&c,&d);输入格式为:ab 中间不能有空格;若有空格,因为空格也是一个字符,就会被读入.
(2)在函数里,要想真正改变参数的值,必须使用指针.
而函数void fun( int *a,int *b)
{
\x09int *c;
\x09c=a;
\x09a=b;
\x09b=c;
}的功能,只是指针间的交换,并没有涉及其指向的内容.若想真正改变指针p,q指向的值.需改为:
void fun( int *a,int *b)
{
\x09int c;
\x09c=*a;
\x09*a=*b;
\x09*b=c;
}
故答案为3 5 3 5
(3)正确答案是B
A数组越界
B正确
C数组越界(A和C表示都是正确的,只是数组越界)
D题目是关于对X数组元素的应用,pt+3算的是元素的地址,不合题意

(17)有以下程序 main() { int i,s=1; for (i=1;i 1.有以下程序 main() { int y=10; while(y--); printf(y=%d ,y); } 程序执行后的输出结果是(b) A) C++程序:棋盘的第一个格子里放一粒米,第二个2粒,第三个4粒,以此类推,直到放满64个格子为止.编写程序计算放入1000粒米要多少格子,10000粒,100000粒.以下是我写的程序:#include#include#include#includ contain与includ consist有什么区别帮帮 我55555555555555555555 请问,contain与includ有什么区别?它们都怎样用? contain 和 includ 有什么区别?请具体说明, invalid preprocessor command 'includ'什么意思?这是c++程序中的语言 若有以下程序段 Int r=8 printf(%d ,x>>1); 输出结果是? 有以下程序 main( ) { int i,s=0; for(i=1;i 程序运行后的结果是 A)0 B)1 C)2 D)3(39)有以下程序#include main(){int a=2,b=2,c=2;printf(”%d ”,a/b&c);} 有以下程序段int k=0,a=1,b=2,c=3;k=ac?c:k;执行该程序段后,k的值是() 有以下程序段 int k=0; while (k==1)k++; while循环的次数是多少 希望能够分析一下题意! They have many pets,( )two black cats.四个选项A、includ B、including C、to includ D、included关键是前面有个逗号, 以下程序段的运行结果是( C )for (y=1;y 用java程序有以下数列 1,1,2,3,5,8,13………………用程序算出第12个数是什么. 【程序改错】 -------------------------------------------------------- 功能:以下程序能求出1*1+2*2+..【程序改错】--------------------------------------------------------功能:以下程序能求出1*1+2*2+.+n*n 8、有以下程序,执行后输出结果是 ( ) #include void main() { int p[8]={11,12,13,14,15,1我是这样算的:11+13+15+17=56.可是我的卷子所给的答案是45.sorry题目上传得不完整,这里补充:8、有以下程序,执 有以下程序段,且变量已正确定义和赋值.for (s=1.0,k=1;k