1600: B-阅读程序2
Description
阅读程序(判断题正确填V 错误填X; 判断题4分(1,2)5分(3),选择题8分 ,共计100分)
1.
#include <cstdio> int main() { int a[3],b[3]; int ijtmp; for (i=0;i<3;i++) scanf("%d",&b[i]); for (i=0;i<3;i++) { a[i]=0; for (j=0;j<=i;j++) { a[i]+=b[j]; b[a[i]%3]+=a[j]; } } //此为第十六行 tmp=1; for (i=0;i<3;i++) { a[i]%=10; b[i]%=10; tmp*=a[i]+b[i]; } printf("%d\n",tmp); return 0; }
判断题
1) 若输入为2 2 2,则输出为值为80。( )
2) 若输入有一个数为0,则输出为值为0。( )
3) 若输入有两个数为0,则输出为值为0。( )
4) 修改tmp初值为0,那么程序输出的结果一定为0。( )
选择题
1) 若输入为1 2 3,则两重循环结束后(第十六行) b[0],b[1],b[2]的值分别为为( )。
A) 1 4 6 B) 3 6 9 C) 5 6 22 D) 6 5 22
2) 若输入为2 3 3,则此程序会在最后输出tmp的结果为( )。
A) 546 B) 669 C) 832 D) 1008
2.
#include<cstdio> int a,b; int work(int a,int b){ if (a%b) return work(b,a%b); return b; } int main(){ scanf("%d%d",&a,&b); printf("%d\n",work(a,b)); return 0; }
判断题
1) 若输入为1 0,则输出值为0。( )
2) 若输入为4 2,则输出值为2。( )
3) 若输入为2 8,则输出值为2。( )
4) 修改第4行语句为 if( a%b==0 )时,则程序的输出结果不会改变。( )
选择题
1) 若输入为24 64时,则输出为值为( )
( A) 8 ( B) 24 ( C) 12 ( D) 64
2) 最为确切的叙述是( )
(A) work是一个函数
(B) work是一个带参数的函数
(C) work 是一个递归函数
(D) work 是一个计算最大公约数的递归函数
3.
#include <cstdio> int main() { int a[100],b[100]; int n,m,i=0,j=0,p=0,k=0; scanf("%d%d",&n,&m); a[0]=n; do { for (j=0;j<i;j++) if (a[i]==a[j]) { p=1; k=j; break; } if (p) break; b[i]=a[i]/m; a[i+1]=a[i]%m*10; i++; }while (a[i]!=0); printf("%d.",b[0]); for (j=1; j<k; j++) printf("%d",b[j]); if (p) printf("("); for (j=k;j<i;j++) printf("%d",b[j]); if (p) printf(")"); printf("\n"); return 0; }
判断题
1) 若输入为12 3,则输出值为4.4 。( )
2) 若输入为10 3,则输出值为3.3。( )
3) 若输入为32 15,则输出值为2.(13)。( )
4) 删除程序中第15行的 break语句时,则程序的输出结果不会改变。( )
选择题
1) 若输入为63 22时,则输出为值为( )
( A) 2.863 ( B) 2.8(63) ( C) 2.(863) ( D) 2.86(3).
2) 你认为该程序输出是将啇的( ) 放入括号内输出。
(A) 小数部分 (B) 小数的循环节 (C) 循环小数 (D) 重复的小数
Sample Input Copy
Sample Output Copy