#include <stdio.h> int main() { int i = 0,j = 0,flag = 0,num = 0; for(i=100;i<=200;i++) { flag = 1; for(j=2;j<i;j++) { if(i%j == 0) { flag = 0; break; } } if(flag) { num++; if(num%5==0) { printf("%d ",i); } else { printf("\n"); } } } printf("\n"); return 0; }指出错误
时间: 2023-11-22 14:52:52 浏览: 79
这段代码的功能是输出 100-200 之间的所有素数,但是存在一个错误:在每行输出 5 个素数后应该换行,而不是没有空格就换行。因此需要修改代码中的 else 分支,将 printf("\n") 修改为 printf(" ")。
修改后的代码如下:
```c
#include <stdio.h>
int main() {
int i = 0, j = 0, flag = 0, num = 0;
for(i = 100; i <= 200; i++) {
flag = 1;
for(j = 2; j < i; j++) {
if(i % j == 0) {
flag = 0;
break;
}
}
if(flag) {
num++;
if(num % 5 == 0) {
printf("%d\n", i);
} else {
printf("%d ", i);
}
}
}
printf("\n");
return 0;
}
```
相关问题
#include<stdio.h> #include<stdlib.h> #include<string.h> void main() { FILE *file1,*file2; int num1,num2; int set1[80],set2[80]; int i,j,flag; file1=fopen("a.txt","r"); file2=fopen("b.txt","r"); i=0; while(fscanf(file1,"%d",&num1)!=EOF) { set1[i]=num1; i++; } j=0; while(fscanf(file2,"%d",&num2)!=EOF) { set2[j]=num2; j++; } fclose(file1); fclose(file2); for(i=0;i<strlen(set1);i++) { flag=0; for(j=0;j<strlen(set2);j++) { if(set2[j]==set1[i]) {flag=1; break;} } if(flag!=1) printf("%d\n",set1[i]); } }帮我判断这段代码是否正确
这段代码有一些问题,需要进行修正:
1. 在比较字符串长度时,应该使用数组元素个数,而不是 `strlen()` 函数。
2. 在比较两个数组元素是否相等时,应该使用 `==`,而不是 `strcmp()` 函数。
3. 应该在 `main()` 函数上加上返回值类型 `int`。
修正后的代码如下:
```
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
int main() {
FILE *file1, *file2;
int num1, num2;
int set1[80], set2[80];
int i, j, flag;
file1 = fopen("a.txt", "r");
file2 = fopen("b.txt", "r");
i = 0;
while (fscanf(file1, "%d", &num1) != EOF) {
set1[i] = num1;
i++;
}
j = 0;
while (fscanf(file2, "%d", &num2) != EOF) {
set2[j] = num2;
j++;
}
fclose(file1);
fclose(file2);
for (i = 0; i < sizeof(set1) / sizeof(int); i++) {
flag = 0;
for (j = 0; j < sizeof(set2) / sizeof(int); j++) {
if (set2[j] == set1[i]) {
flag = 1;
break;
}
}
if (flag != 1)
printf("%d\n", set1[i]);
}
return 0;
}
```
#include <stdio.h> #include <string.h> struct LinkMan { int num; char name[20],tel[20]; }; int main() { struct LinkMan Link[10]; char s[20]; /*用来存放待查找的联系人姓名*/ int i,n,flag=0; scanf("%d",&n); for(i=0;i<n;i++) /*1*/ /*1*/; scanf("%s",s); /*2*/ /*2*/ return 0; }
可以根据上述描述,填写如下代码:
```c
#include <stdio.h>
#include <string.h>
struct LinkMan {
int num;
char name[20], tel[20];
};
int main() {
struct LinkMan Link[10];
char s[20]; /*用来存放待查找的联系人姓名*/
int i, n, flag = 0;
scanf("%d", &n);
for (i = 0; i < n; i++) {
scanf("%d %s %s", &Link[i].num, Link[i].name, Link[i].tel);
}
scanf("%s", s);
for (i = 0; i < n; i++) {
if (strcmp(Link[i].name, s) == 0) {
printf("%s", Link[i].tel);
flag = 1;
break;
}
}
if (flag == 0) {
printf("Not Found");
}
return 0;
}
```
其中,第一个空白处需要填写的代码是:
```c
scanf("%d %s %s", &Link[i].num, Link[i].name, Link[i].tel);
```
这行代码用来输入每个联系人的信息,并存放到 Link 数组中。
第二个空白处需要填写的代码是:
```c
if (strcmp(Link[i].name, s) == 0) {
printf("%s", Link[i].tel);
flag = 1;
break;
}
```
这段代码用来遍历 Link 数组,查找姓名为 s 的联系人,并输出该联系人的电话号码。如果找到了该联系人,则将 flag 标记为 1,表示已经找到;如果没有找到,则 flag 仍为 0,程序会输出 "Not Found"。
相关推荐
![rar](https://img-home.csdnimg.cn/images/20210720083606.png)
![doc](https://img-home.csdnimg.cn/images/20210720083327.png)
![doc](https://img-home.csdnimg.cn/images/20210720083327.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)