下列求100以内所有偶数之和的程序是否正确? sum = 0 i = 0 while i < 100: if i % 2 == 0: sum += i i += 2 print sum
第1题:
A. 12
B. 18
C. 24
D. 30
第2题:
设有以下程序:
main()
{int i,sum=0;
for(i=2;i<10;i++)
{ if((i%2)==0)
continue;
sum+=i;}
printf("%d\n",sum);
}
程序执行后的输出结果是( )。
第3题:
下列程序段的输出结果是【 】。
include<iostream.h>
void main()
{int i=10,sum=0;
do
{
sum=+sum+i;
i=i-2;
}while(i>=2);
cout<<sum<<end1;
}
第4题:
以下C程序的运行结果为______。main(){ int i=1,sum=0; loop:if(i<=10) { sum+=i; i++; goto loop; } printf("sum=%d\n",sum);}
A.sum=10
B.sum=55
C.sum=100
D.sum=88
第5题:
有如下程序: Private Sub Form_Click( ) Dim i As Integer, Sum As Integer Sum = 0 For i = 2 To 10 If i Mod 2=0 And i Mod 3<>0 Then Sum = Sum + i End If Next Print Sum End Sub 程序运行后,单击窗体,输出结果为
A.12
B.30
C.24
D.18
第6题:
有如下程序:: Private Sub Form. Click() Dim i As Integer,sum As Integer sum=0 For i=2 To 10 If i Mod 2 <>0 And i Mod 3=0 Then sum=sum+i End If Next i Print sum End Sub 程序运行后,单击窗体,输出结果为______。
A. 12
B.30
C.24
D.18
第7题:
以下能够正确计算1+2+3+…+10的程序是
A.Private Sub Command1_Click() Sum=0 ForI=1 To 10 Sum=Sum+I Next I Print Sum End Sub
B.Private Sub Command1_Click() Sum=0,I=1 Do While I<=10 Sum=Sum+I I=I+1 Print Sum End Sub
C.Private Sub Command1_Click() Sum=0: I=1 Do Sum=Sum+I I=I+1 Loop While I<10 Print Sum End Sub
D.Private Sub Command1_Click() Sum=0: I=1 Do Sum=Sum+I I=I+1 Loop Until I<10 Print Sum End Sub
第8题:
下面程序用于计算矩阵的两条对角线上的元素之和。补充下列语句,实现该功能。
include<iostream.h>
void main(){
int a[3],[3]={9,8,7,6,5,4,3,2,1};
int sum1=0,sum2=0,i,j;
for(i=0;i<3;i++)
for(j=0;j<3;j++)
if(i==j)sum1+=a[i][j];
for(i=0;i<3:i++)
for(j=2;【 】;j--)
if(i+j==2)sum2+=a[i][j];
}
第9题:
有如下程序: Private Sub Form_CHck() Dim i As Integer,sum As Integer sum=0 For i=2 TO 10 If Mod 2 <>And i Mod 3=0 Then sum=sum+i End If Next i Print sum End Sub 程序运行后,单击窗体,输出结果为______。
A.12
B.30
C.24
D.18
第10题:
下列语句段中不是死循环的是( )。
A.int i=100 While (1) { i=i%100+1 if(i==20) break; }
B.int i sum=O; for (i=l;;i++) sum=sum +l;
C.int k=0; do { ++K }while(k<=O);
D.int s=3379; while (s+ +%2+3%2)s++;
第11题:
以下程序是一个函数,功能是求二阶矩阵(m行n列矩阵)的所有靠外侧的各元素值之和。(本程序中二阶矩阵用一维数组来表示。)
例如,矩阵为:
3 0 0 3
2 5 7 3
1 0 4 2
则所有靠外侧的各元素值之和为3+0+0+3+2+3+1+0+4+2=18。
add(int m,int n,int arr[])
{ int i,j,sum=0;
for(i=0;i
for(j=0;j<N;J++)
sum=sum+ (7) ;
for(j=0;j
for(i=1; (8) ;i++)
sum=sum+arr[i*n+j];
return(sum);
}
第12题:
以下程序的运行结果是(). main() { int i=1,sum=0; while(i<10) sum=sum+1;i++; printf("i=%d,sum=%d",i,sum); }
第13题:
下列语句段中不是死循环的是()。
A、intI=100;while(1){I=I0+1;if(I=20)break;}
B、intI;sum=0;for(I=1;;I++)sum=sum+1;
C、intk=0;do{++k;}while(k>=0);
D、ints=3379;while(s++%2+3%2)s++;
第14题:
下列程序的输出结果是______。 #define A 100 main() { int i=0,sun=0; do{ if(i==(i/2)*2)continue; sum+i; }while(++i<A) ; printf("%d\n",sun); }
A.2500
B.2050
C.4
D.0
第15题:
有如下程序,可以得到0到100之间所有偶数之和。 DIM I AS INTEGER DIM SUM AS INTEGER SUM = 0 FOR I =0 TO 100 STEP 2 SUM = SUM + I NEXT I DEBUG. PRINT I DEBUG. PRINT SUM 程序运行后,变量I和SUM的值是( )。
A.100和2450
B.102和2550
C.104和2650
D.106和2850
第16题:
下列程序的输出结果是______。 #define A 100 main() { int i=0,sum=0; do{ if(i=(i/2)*2)continue; sum+=i; }while(++i<A); print("%d\n",sum); }
A.2500
B.2050
C.4
D.0
第17题:
下列各循环语句中,不是死循环的是( )。
A.int i=100; while(1){ i=i%100+1; if(i==20) break; }
B.int i,sum=0; for(i=1;;i++) sum=sum+1;
C.int k=0; do{ ++k; }while(k>=0);
D.int s=3379; while(s++%2+3%2) s++;
第18题:
有如下程序: Private Sub Form_Click() Dim i As Integer, Sum As Integer sum=0 For i=2 To 10 If i Mod 2<>0 And i Mod 3=0 Then sum=sum+i End If Next i Print sum End Sub 程序运行后,单击窗体,输出结果为______。
A.12
B.30
C.24
D.18
第19题:
下列程序的输出结果是______。 #define A 100 main() { int i=0,sum=0; do{ if(i==(i/2)*2) continue; sum+=i; }while(++i<A) ; printf("%d\n",sum);
A.2500
B.2050
C.4
D.0
第20题:
执行下列程序,其输出为( )。 int Sum,j; Sum=0; j=0; do{ j++; for(int i=5:i>j;i--). Sum=Sum+(i+j); {while(j<11=; } }
A.45
B.50
C.60
D.65
第21题:
以下能够正确计算1+2+3+…+10的程序是
A.Private sub Command1_Click( ) sum=0 For 1=1 To 10 Sum=sum+1, Next I Print Sum End Sub
B.Private sub Command1_Click( ) Sum=0,I=1 Do While l<=10 Sum=Sum+1 I=I+1 Print Sum End Sub
C.Private Sub command1_click( ) Sum=0:I=1 Do Sum=Sum+1 I=I+1 Loop While I<10 Print Sum End Sub
D.Private Sub command1_Click( ) Sum=0:I=1 Do Sum=Sum+1 l=I+1 Loop Until I<10 Print Sum End Sub
第22题:
试题1
下列程序的功能是:找出所有100以内(含100)满足i,i+4,i+10都是素数的整数i(i+10也在100以内)的个数cnt以及这些i之和sum。请编写函数countvalue()实现程序要求,最后调用函数writeDat()把结果cnt和sum输出到文件out.dat中。
注意:部分源程序已给出。
请勿改动主函数main()和函数writeDAT()的内容。
试题程序:
#include <stdio.h>
int cnt, sum;
int isPrime(int number)
{
int i, tag = 1;
for (i=2; tag && i<=number/2; i++)
if (number%i == 0)
tag = 0;
return tag;
}
void countValue()
{
}
void writeDat()
{
FILE *fp;
fp = fopen("out.dat", "w");
fprintf(fp, "%d\n%d\n", cnt, sum);
fclose(fp);
}
void main()
{
cnt = sum = 0;
countValue();
printf("满足条件的整数的个数=%d\n", cnt);
printf("满足条件的整数的和值=%d\n", sum);
writeDat();
试题1答案:
void countvalue()
{
int i;
for(i=2;i<=90;i++)
if(isPrime(i) && isPrime(i+4) && isPrime(i+10))
{
cnt++;
sum+=i;
}
} }
试题1分析:
该程序属于按条件查找数字的题目,考核的知识点为:(1)素数的判定;(2)统计个数并求和。
本题的解题思路是:题目要求的筛选范围是“所有100以内(含100)满足i、i+4、i+10都是素数的整数i(i+10也在100以内)”,由于最小的素数是2,且i+10要在100以内(含100),所以筛选的范围是2~90。
题目要求的筛选条件是“满足i、i+4、i+10都是素数的整数i”。在答题之前,应先通读题目已给出的源程序,在我们要实现的函数countvalue()之前给出一个在题目中从未提及的函数isPrime()。仔细分析这个函数的代码不难发现,它实现了从2~number/2内寻找能整除number的数,如果找到就使变量tag为0,此时循环条件将不成了,最终返回0,如果找不到,变量tag为1,返回1.这段代码实现的是判断一个数是够是素数。所以在函数中对筛选条件可以简化为if(isPrime(i) && isPrime(i+4) && isPrime(i+10))。
程序的流程是:调用countvalue()函数对数据进行处理,最后由writeDAT()函数将结果写入文件out.dat中。
在countvalue()函数中,For循环的功能是判断i、i+4、i+10是否都为素数,若在素数则将i累加到sum中,同时个数cnt加1,函数结束。
第23题:
若变量inti,intsum=0,要求程序段完成求1加到100的和的,能完成此操作的程序段不正确的是()
第24题:
for(i=1;i<=100;i++)sum+=i;
for(i=1;i<=100;i++)sum=i;
for(i=1;i<=100;i++)sum=sum+i;
for(i=0;i<=100;i++)sum+=i;