猿问

求解,关于C++的一些问题,跪求答案!

1.以下程序的输出为( )
#include<stdio.h>
main()
{ int i, j, x=0;
for ( i=0; i<2; i++ )
{ x++;
for ( j=0; j<=3; j++ )
   { if ( j%2) contiunue; x++; }
x++; }
printf ( “ x=%d\n”, x); }
A.x=4 B.x=8 C.x=6 D.x=12
2.以下程序的输出为( )
#include<stdio.h>
main()
{ int i, j, k=0, m=0;
for ( i=0; i<2; i++ )
{ for ( j=0; j<3; j++ ) k++;
k - = j ; }
m = i + j;
printf ( “ k=%d, m=%d\n”, k, m); }
A.k=0, m=3 B.k=0, m=5 C.k=1, m=3 D.k=1, m=5
3.以下程序的输出为( )
#include<stdio.h>
main()
{ int x=1, y=0, a=0, b=0;
switch ( x )
{ case 1: switch ( y)
{ case 0 : a++; break;
case 1 : b++; break; }
case 2 : a++; b++; break;
case 3 : a++; b++; }
printf ( “a=%d, b=%d\n”, a, b); }
A.a=1, b=0 B.a=2, b=1 C.a=1, b=1 D.a=2, b=2
4.在C语言中,当while语句中的条件为( )时,结束该循环。
A.0 B.1 C.true D.非0
在C语言中,当do-while语句中的条件为( )时,结束该循环。
A.0 B.1 C.true D.非0
5.若k为整型,以下while循环体中的语句执行( )。
k=2;
while ( k=0 )
{ printf ( “%d”, k);
k - -; printf ( “\n” ); }
A.无限次 B.0次 C.1次 D.2次
6.以下程序的输出为( )。
#include<stdio.h>
main()
{ int y=10;
while ( y- - );
printf ( “y=%d\n”, y); }
A.y=0 B.while构成无限循环 C.y=1 D.y= -1
7.以下语句段中,( )不是无限循环。
A.i=100;
while ( 1 )
{ i = i%100; i++; if ( i>100 ) break; }
B.for ( ; ; );
C.k=32764;
do { k++; k++; } while ( k>0 );
D.s=32764;
while ( ( s+%2) || ( s%2 ) ) s++;
8.以下程序的输出结果为( )
#include<stdio.h>
main()
{ int k=0; char c=’A’;
do
{ switch ( c++ )
{ case ‘A’ : k++; break;
case ‘B’ : k- -;
case ‘C’ :k+=2; break;
case ‘D’ : k=k%2; continue;
case ‘E’ :k=k*10; break;
default : k=k/3; }
k++; } while ( c<’G’ );
printf ( “ k=%d\n”, k) ; }
A.k=3 B.k=4 C.k=2 D.k=0
9.设i和x都是int类型,则以下for循环( )。
for ( i=0, x=0; i<=9 && x!=876; i++) scanf ( “ %d” , &x );
A.最多执行10次 B.最多执行9次 C.是无限循环 D.循环体一次也不执行

慕村225694
浏览 184回答 1
1回答

叮当猫咪

#include <iostream>#include <fstream>using namespace std;const int n=10000;int num[n]=;//乘法结果表void multiply(int q){for ( int i=0;i<n;i++)num[i]*=q;for ( i=0;i<n-1;i++){num[i+1]+=num[i]/10000;num[i]%=10000;}}void output(){bool f=0;// ofstream f1;// f1.open("result.txt");for (int i=n-1;i>=0;i--){if (num[i]!=0){if (f){if (num[i]>999)cout<<num[i];else if (num[i]>99)cout<<'0'<<num[i];else if (num[i]>9)cout<<'0'<<'0'<<num[i];else cout<<'0'<<'0'<<'0'<<num[i];}else{cout<<num[i];f=true;}}else if (f){cout<<'0'<<'0'<<'0'<<'0';}}cout<<endl;}int main(){int q;cout<<"输入target";cin>>q;cout<<q<<'!'<<'=';for (int i=1;i<=q;i++)multiply(i);output();system("pause");return 0;}========================这个程序算到10000!不成问题,把数组大小改成40000,可以算到20000!
随时随地看视频慕课网APP
我要回答