使用VC++2010打开考生文件夹下modil中的解决方案。此解决方案的项目中包含一个源程序文件modil.c。在此程序中,函数fun()的功能是判断一个整数是否为素数,若是素数返回 1,否则返回0。 在main()函数中,若fun()返回1输出Y

admin2023-02-27  8

问题 使用VC++2010打开考生文件夹下modil中的解决方案。此解决方案的项目中包含一个源程序文件modil.c。在此程序中,函数fun()的功能是判断一个整数是否为素数,若是素数返回
1,否则返回0。
    在main()函数中,若fun()返回1输出YES,若fun()返回0输出NO!。
    请改正程序中的错误,使它能得出正确的结果。
    注意:不要改动main()函数,不得增行或删行,也不得更改程序的结构!
  试题程序:
1 #include<stdlib.h>
2 #include<conio.h>
3 #include<stdio.h>
4 int fun(int m)
5 {
6    int k=2;
7    while(k<=m&&(m%k))
8  /*********found*********/
9    k++
10  /*********found*********/
11    if(m=k)
12    return 1;
13    else return 0;
14 }
15 void main()
16 {
17    int n;
18    system("CLS");
19    printf("\nPlease enter n:");
20    scanf("%d",&n);
21    if(fun(n))printf("YES\n");
22    else printf("NO!\n");
23 }

选项

答案(1)k++; (2)if(m==k)

解析 函数fun()的功能是判断m是否为素数:m从2开始作为除数,并对m取余,若不存在一个数使余数为0,则m为素数。
    (1)语法错误,k++后少分号。
    (2)程序的错误在于将if(m=k)语句中的逻辑表达式写成了赋值语句。  
转载请注明原文地址:https://jikaoti.com/ti/xBoiFFFM
0

相关试题推荐
最新回复(0)