这个c语言程序是错误的,找个大神帮我改正一下,谢谢了。

作者&投稿:都枝 (若有异议请与网页底部的电邮联系)
一个c语言程序,检测的时候总提示有一个错误,但不知道是哪儿错了,请大神帮我修正一下,谢谢~

没有错误,程序也运行正确,可以正常使用,已经测试过了,用VC++6.0测试的,我把工程文件发给你看看。

检查你的func2函数,只有一个条件返回,如果条件不满足,并没有返回值

#include"stdio.h"

void fenxi(int n);

void shuchu(int n);


void  fenxi(int n)

{

 int a[52]; 

 int i,j; 

 printf("游戏分析:

");

 printf("如下列数组,游戏开始时,所有牌面朝上,每张牌翻一下,则该张牌出现一次,若");

 printf("出现偶数次的牌为正反抵消,依然为朝上的,所以朝上的为1和以下偶数次出现的数。
"); 

 for(i=0;i<52;i++)  

 {   

for(j=2;j<52;j++)    

if(i%j==0)    

{    

printf("%d   ",i);

    }   

printf("
");  

 } 

 

}

void shuchu(int n)

int a[52];

int i,j;     

printf("

第五十二次翻牌过后正面向上的有:

"); 

for(i=0;i<52;i++) 

{   

a[i]=-1; 

}     

for(i=0;i<52;i++) 

{

  for(j=2;j<52;j++)  

  {        

 if(i%j==0)  

 {  

    a[i]=a[i]*-1;  

 }  

  }  

}

printf("正面向上的牌有:
");

for(i=0;i<52;i++)

{     

if(a[i]*-1==1)     

printf("%d   ",i);

//getch();  

}

void main()

int m; 

printf("


"); 

printf("******纸牌游戏******
");

printf("游戏规则如下:


");

printf("编号为1-52张牌,正面向上,从第2张开始,以2为基数,是2的倍数的牌翻一次,
");    

printf("    直到最后一张牌;然后,从第3张开始,以3为基数,是3的倍数的牌翻一次,直到最后
");

printf("    一张牌;然后…从第4张开始,以4为基数,是4的倍数的牌翻一次, 直到最后一张牌;
"); 

printf("    再依次5的倍数的牌翻一次,6的,7的 直到 以52为基数的 翻过,输出:这时正面向
");

printf("    上的牌有哪些?
"); printf("*1.游戏分析:
*2.输出结果:");

printf("请输入你的选择"); 

scanf("%d",&m);  

fenxi(m); 

shuchu(m);

}



小问题太多了 自己要先debug再把问题丢出来,不然什么东西都学不到。
#include <stdio.h>
void fenxi();
void shuchu();
void main(){ 
    int m; 
    printf("


");
    printf("******纸牌游戏******
"); 
    printf("游戏规则如下:


"); 
    printf("编号为1-52张牌,正面向上,从第2张开始,以2为基数,是2的倍数的牌翻一次,
");   
    printf("    直到最后一张牌;然后,从第3张开始,以3为基数,是3的倍数的牌翻一次,直到最后
");
    printf("    一张牌;然后…从第4张开始,以4为基数,是4的倍数的牌翻一次, 直到最后一张牌;
");
    printf("    再依次5的倍数的牌翻一次,6的,7的 直到 以52为基数的 翻过,输出:这时正面向
"); 
    printf("    上的牌有哪些?");

    while(1){
        printf("
*1.游戏分析:
*2.输出结果:
*3.退出:
"); 
    printf("请输入你的选择:"); 
    scanf("%d",&m);
    switch(m){
    case 1:
        fenxi();
        break;
    case 2:
        shuchu();
        break;
    default:
        return;
    }
    }
    return;
}

void fenxi(){
    int i,j;
    printf("游戏分析:

");
    printf("如下列数组,游戏开始时,所有牌面朝上,每张牌翻一下,则该张牌出现一次,若"); 
    printf("出现偶数次的牌为正反抵消,依然为朝上的,所以朝上的为1和以下偶数次出现的数。
"); 
    for(i=1;i<=52;i++){
        for(j=2;j<=52;j++)
             if(i%j==0){
                 printf("%d   ",i);
             }
        printf("
"); 
    } 
    return;
}

void shuchu(){
    int a[52]={0}; 
    int i,j;     
    printf("

第五十二次翻牌过后正面向上的有:

");
    for(i=0;i<=51;i++)  { 
        a[i]=-1; 
    }     
    for(i=1;i<=52;i++)  {
        for(j=2;j<=52;j++){   
            if(i%j==0){  
                a[i-1]=a[i-1]*-1; 
            }  
        }  
    }
    for(i=1;i<=52;i++){   
        if(a[i-1]*-1==1)    
            printf("%d   ",i); 
    } 
    getchar();  
}


C语言,这个程序提示有一个错误但是找了好久找不到啊
答:你把第二个和第四个printf(“ ”);改成printf(“\n”);应该就没事了。

可以帮我看一下这个C语言程序哪里有错吗?然后怎么改?
答:这段C语言程序中有几处错误和改进的地方:1. `#include "stdio.h"` 应该改为 `#include <stdio.h>`。标准库头文件使用尖括号而不是双引号。2. 在函数 `C()` 中,变量 `f` 没有定义。需要将其定义为合适的值。3. 在函数 `E()` 中,`printf()` 函数的格式字符串中使用了 `%d` 来...

求助,帮忙找找这个C语言程序的错误(类似约瑟夫环的问题)
答:“error: syntax error before "int"这个error怎么解决?”函数调用不能再申明变量啦……结构体定义错误(大小写要注意):任务不兼容的指针类型(assignment from incompatible pointer type)不过居然出现这样的结果:之前用eclipse for C/C++ 出现的就是上面的结果,后来用Dev-C++就可以了,应该就是这两...

C语言程序找错`
答:main(){ int m,count=0;char n;while (1){ printf("Please input an integer:");scanf("%d",&m);if (m>=0 && m<=100)count++;else if (m>100);else if (m<0){ getchar();/*这里要加这个*/ printf("continue?Y&N:");scanf("%d",&n); /*不是%d是%c*/ if (n=='...

简单C语言,可以帮我看看这个程序错误在哪吗?为什么运行不了呢?_百度...
答:include<stdio.h> int main() { int n,max=0,min=0,i,j,k;scanf("%d",&n); i=0;while ( n!=0 ) { k=n%10;if ( i==0 ) min=max=k;else if ( max<k ) max=k; else if ( min>k ) min=k;i++; n/=10;} printf("%d %d %d\n",i,max,min);} ...

编写的C语言程序怎么总是有个错误 但找不到.
答:如果你使用的VC 看看随便编几个程序 越短越好 看看 还有没有错 如果所有的程序运行的时候都出错 那就是 VC安装出问题了 我也遇到过这个问题 我重新安装系统后 重新安装的VC 安装在C盘 不要动他的默认设置 就好了 祝你成功

帮我检查一下这段C语言.
答:其实你这个程序错误的地方非常多(LZ不要生气啊,我初学的时候还写不出这样的呢)先说你的程序错在哪里,主要错在3个地方:错误1. 逻辑设计的错误(这个比较严重,稍后再说)错误2. 在下列语句:for(i=1;i<6;i++,p++)if (*p>b) break ;在这个语句执行后,程序中p已经指向了数组a的第3个...

求C语言大师指教:这个程序出错了,错误如下:
答:毕业好久没看了都,今天和你唠唠。首先显示的是“执行 cl.exe 时出错”,这个cl.exe和你的CPP文件名不一样,你要检查下项目管理里面是不是编译你指定的文件。最好重新建立一个,不要再以前项目的基础上更改。下面说内容。程序名最好不要用中文的,容易出现不可预知的错误。fun函数中 字符长度可以...

初涉C语言,下面这个程序运行始终有个错,找不到原因啊,求大神路过指导...
答:printf("\n");return 0;} void sort(int array[],int n){ int i,j,k,t;for(i=0;i<n-1;i++){ k=i;for(j=i+1;j<n;j++)if(array[j]<array[k])k=j;t=array[k];array[k]=array[i];array[i]=t; } } 错误为:1 scanf("%d",&a[i]); 使用逗号 修改之后运行OK ...

各位哥哥姐姐帮我找一下C语言错误,有三个错误
答:给,错误真不少啊,已经都改好了:include <stdio.h> main(){ double r,s,v;//int pi=3.14; //由于pi被赋值为3.14,所以需要定义为double型 double pi=3.14;//printf(input r:\n);printf("input r:\n"); //printf的格式使用错误 //scanf("%d",r);scanf("%lf",&r); //...