c语言-一段C语言程序,为什么IF判断无法成立,请直接说代码的修改方法?

问题描述

一段C语言程序,为什么IF判断无法成立,请直接说代码的修改方法?

#include
#include
#include
#define N 2
#define M 2

struct compete
{
char num[10];
char name[10];
float score[M];
float aver;
int no;
}com[N];

void delinfo()
{
int i,j;
char o[10];
char m[10];
printf("请输入需要删除的选手的参赛编号n");
scanf("%s",&o);
for(i=0;i<N;i++)
{
struct compete temp;
//strcpy(temp.num,com[i].num);
strcpy(temp.num,o);
printf("取值%s",temp.num);
printf("对比值%s",com[i].num);
if(temp.num==com[i].num) //就是这里的判断 将com[i].num强转成int==o 也无法成立
{
printf("进入循环%s",o);
break;
}
}

for(j=i;j<M;j++)
{
    printf("执行语句%s",o);
    strcpy(com[j-1].num,com[j].num);
}

for(i=0;i<N;i++)
    com[i].no=i+1;
printf("编号t姓名t得分n");
for(i=0;i<N;i++)
    printf("%st%st%.2fn",com[i].num,com[i].name,com[i].aver);

return;

}

解决方案

用strcmp(temp.num,com[i].num)看看,用==比较的好像是地址。

解决方案二:

在C语言里面字符串是没有办法直接进行比较的。可以使用strcmp函数进行比较,单个的字符是可以进行比较的。

时间: 2024-12-01 19:19:04

c语言-一段C语言程序,为什么IF判断无法成立,请直接说代码的修改方法?的相关文章

c语言-一段简单的程序,就是想不通,好像有些漏洞,求解决,我是好奇宝宝

问题描述 一段简单的程序,就是想不通,好像有些漏洞,求解决,我是好奇宝宝 #include using namespace std; void main() { int n,reverse = 0,rem,temp; printf("enter an integer: "); scanf("%d",&n); temp = n; while(temp!=0) { rem = temp%10; reverse = reverse*10+rem; temp/=10

这是我写的一段c语言程序,做了很久只能做到这样

问题描述 这是我写的一段c语言程序,做了很久只能做到这样 #include #include #include #define N 8 main() { int i,n=0,c=0; int a[N]; srand(time(NULL)); for(i=0;i<N;i++) { a[i]=rand()%2; printf("%8d%8dn",i,a[i]); } printf("n"); while(c<8) { for(i=1;i<N;i++)

c语言-我的一段C语言程序在VC6.0上面运行不出来,貌似是头文件的问题,求帮忙

问题描述 我的一段C语言程序在VC6.0上面运行不出来,貌似是头文件的问题,求帮忙 #include"C:UsershpDesktopcomplex.h" main() { complex *a; int N=1024; //给a赋值 fft(a,N) } int fft(complex *a,int l) { const double pai=3.141592653589793; complex u,w,t; unsigned n=1,nv2,nm1,k,le,lei,ip; uns

指针-@C语言大神,这程序谭浩强给的答案看不懂,求解释?

问题描述 @C语言大神,这程序谭浩强给的答案看不懂,求解释? //题目:输出字符串里数字团,以及个数.比如89cy129//就输出89,129,一共2个数.// 问题:后面一大段为啥要复制粘贴前面一大段的代码?//有什么用?求解释.而且运行也不对,求修改!跪谢! include int main() { char str[80],*pstr; int m,i=0,j=0,k=0,digit=0,ndigit=0,e10,a[80],*pa; pstr=&str[0];pa=&a[0]; g

c语言-C语言写的倒序小程序,麻烦大家看看

问题描述 C语言写的倒序小程序,麻烦大家看看 #include #include void reverse(int p,int *q) { int j=0,i=0,N=8,k=N/2; for(;j<=N-1;j++) //雷德算法 { *(p+j)=(q+i); while(k<=i) { i=i-k; k=k/2; } i=i+k; k=N/2; } } int main() { int a[]={1,2,3,4,5,6,7,8}; int b,*c,i; b=a; c=(int)mall

用c语言编写的音频播放程序中的问题,注意这个是嵌入式程序

问题描述 用c语言编写的音频播放程序中的问题,注意这个是嵌入式程序 我得到一个用c语言编写的音频播放程序,但其中有两段代码看不懂,请各位大神帮帮忙,程序如下 #define mru_swap_16(x) ((unsigned short)( (((unsigned short)(x) & (unsigned short)0x00ffU) << 8) | (((unsigned short)(x) & (unsigned short)0xff00U) >> 8) ))

《Python语言程序设计》——第一部分 程序设计基础 第1章计算机、程序和Python概述1.1 引言

第一部分 程序设计基础 第1章 计算机.程序和Python概述学习目标 演示对计算机硬件.程序和操作系统的基本理解(第1.2-1.4节). 描述Python的历史(第1.5节). 解释Python程序的基本语法(第1.6节). 编写和运行一个简单的Python程序(第1.6节). 解释恰当的程序设计风格和文档的重要性,并提供相应的实例(第1.7节). 解释语法错误.运行时错误和逻辑错误之间的区别(第1.8节). 使用Turtle创建一个基本的图形程序(第1.9节). 1.1 引言 关键点:本书的

c语言编程-求短时傅立叶程序,用c编写的!

问题描述 求短时傅立叶程序,用c编写的! 哪位有短时傅立叶,傅立叶,傅立叶反变换的c语言程序,求大神帮忙! 解决方案 这种代码很复杂,一般写出来的都不愿意随便分享的! 解决方案二: 有大神愿意分享的吗?

c语言-用C语言编写一个对数组排序的程序,要求使用递归算法实现。

问题描述 用C语言编写一个对数组排序的程序,要求使用递归算法实现. 用C语言编写一个对数组排序的程序,要求使用递归算法实现. 解决方案 http://blog.sina.com.cn/s/blog_70441c8e0100pxuh.html 快速排序 解决方案二: http://blog.csdn.net/meditator_hkx/article/details/49756199 快速排序采用的二分法,正是将问题化大为小,展现递归的精髓-