c语言编程错误解析:下面是代码(跟上一个提问不一样),请问错在哪儿?为什么错了?怎么改才是正确的?

作者&投稿:止耿 (若有异议请与网页底部的电邮联系)
第四题,c语言编写程序,我写的代码哪里错了,,要怎么改才对?~

第二个式子写错了,然后顺序有问题,还有a在第一次运算后被改变了
127
127 % 100 % 10 = 7
127 / 10 % 10 = 2
127 / 100 = 1
说数据类型那个好好去补补基础课
#include int main(){ int tmp; scanf("%d", &tmp); printf("%d%d%d
", tmp % 100 % 10, tmp / 10 % 10, tmp / 100); return 0;}

char *pS[NUM_P] = {NULL};是不是有问题??你这里定义的是什么意思?指针数组吗?
继续问的话请点追问,要不我看不到的。。。。
我把你的代码贴过来运行了一下啊, 没有报错啊,可以走完程序,就是最后的平均数结果不对。
不知道是不是你的编译环境有问题。还是说按照特定的操作顺序可以再现你的错误?

第一个:
pS = (double *)malloc(sizeof(double)*index);
pS[NUM_P]是分配好内存的了,你定义的42,pS是常量,无法进行赋值操作。
你需要重新定义指针变量来操作
第二个:
strcpy()是针对字符串的,不能将浮点数拿来拷贝,你就改成:
pS[j++] = zhuanhuan;
更何况你还写的pS[j++],假如pS[]是字符串数组,strcpy()也需要字符串的指针

你用的是什么编的,我的怎么就可以啊,我的好像就是你要的那个结果哦,你试下吧,我也是改了你的小小的一点

#include<stdio.h>
main()
{
char str1[80],str2[80];
int i=0,j=0;
printf("输入st1的字符,并按回车结束:");
gets(str1);
printf("输入st2的字符,并按回车结束:");
gets(str2);
while(str1[i]!='\0')
{
i++;
if(str1[i]=='\0') break;
}
while(str2[j]!='\0')
{
str1[i]=str2[j];
i++;
j++;
if(str2[i]=='\0') break;
}
str1[i]='\0';
printf("%s\n",str1);
return 0;
}//这里没有符号的,不知是不是你打错了


#include "student.h"/*头文件*/

link deletenode(link head)//链表
{
link pointer; /*节点声明*/
link Back;
char DataFile[40];//char的字符数组
int key; //整形变量key
FILE *fp = NULL;//文件操作指针,初始化为null
struct student Tmps;//student 结构体对象Tmps

printf("\nPlease input the student number that you want to delete:");//输出nPlease input the student number that you want to delete:这个语句
scanf("%d",&key);//输入一个key,也就是你要删除的节点
pointer=head; /*pointer 指针设为首节点*/
while(1)//死循环,不断执行while里面的语句
{
if(pointer->next==NULL)//如果头指针指向空
{
printf("Not Found!\n");//则输出Not Found
break;//直接跳出while循环
}

if (key == 0) /*删除首节点*/
{
pointer = head->next;//头节点的下一个节点赋值给指针pointer
head->next = pointer->next;//指针pointer的下一个节点作为头节点的下一个节点
free(pointer);//释放指针pointer
break;
}

这样可以 了吧?

该程序的主要作用是删除你输入的一个节点。


c语言编程错误解析:下面是代码(跟上一个提问不一样),请问错在哪儿?为什 ...
答:第一个:pS = (double *)malloc(sizeof(double)*index);pS[NUM_P]是分配好内存的了,你定义的42,pS是常量,无法进行赋值操作。你需要重新定义指针变量来操作 第二个:strcpy()是针对字符串的,不能将浮点数拿来拷贝,你就改成:pS[j++] = zhuanhuan;更何况你还写的pS[j++],假如pS[]是...

c语言编程时出现错误:0x0000005怎么办?
答:1.开放开发c++5.11进入以下界面。2.下面是代码。3.点击下面的盒子运行选项。4,单击下面的框后,编译选项。5.在第6行通过搜索找到失踪的代码;”。6.重新编译时发现错误为0,见下框。

c语言编程错误解析:这
答:因此问题可以按照以下方法解决:点击VC“TOOLS(工具)”—>“Option(选择)”—>“Directories(目录)”重新设置“Excutable Fils、Include Files、Library Files、Source Files”的路径。很多情况可能就一个盘符的不同(例如你的VC装在C,但是这些路径全部在D),改过来就OK了。

C语言编程最常见的15个错误
答:分号是C语句中不可缺少的一部分,语句末尾必须有分号。a=1 b=2 编译时,编译程序在“a=1”后面没发现分号,就把下一行“b=2”也作为上一行语句的一部分,这就会出现语法错误。改错时,有时在被指出有错的一行中未发现错误,就需要看一下上一行是否漏掉了分号。{ z=x+y;...

C语言编程出现这个错误了cannot convert from 'int ** ' to 'int *...
答:代码在编译时会出现 error C2664: 'InsertSort' : cannot convert parameter 1 from 'int' to 'int []'这是因为用数组名做函数实参时,向形参(数组名或指针变量)传递的是数组首元素地址,因此对参数的类型做一下改变,如下图所示:

C语言编程错误
答:函数算法有错——见下面改过的代码。错误行被挂起了,后面是改正的。其中*a=p这一句的错误大了:一是把一个指针p赋给了一个字符*a;二是你的愿望好像是要将处理后的字符串p的首址赋给a,且让a带回主函数——把p赋给a是可以的,但a不会带回主函数,因为形式参数是“拷贝”,函数退出后就...

c语言编程runtime error怎么解决
答:修正两个错误即可:1、fun函数里面两个for循环控制变量有问题,应改为下面这种形式:for(i=0;i<2;i++)for(j=0;j<M;j++){ if(a[i][j]>max)max=a[i][j];} 2、输出的时候也有问题,fun函数返回值是int,所以应该是:printf("\nThe value of function is:%d\n",fun(arr));...

c语言 编程 代码 为什么会出现这种错误 怎么解决?
答:产生这个问题可能的原因 1, 你用vc建了一个控制台程序,它的入口函数应该是main, 而你使用了WinMain.2. 你用vc打开了一个.c/.cpp 文件,然后直接编译这个文件,这个文件中使用了WinMian而不是main作为入口函数。vc这时的默认设置是针对控制台程序的。解决方法 1.进入project->setting->c/c++, ...

C语言编程,下图程序中有哪些错误?
答:首先指出程序中的三处错误,第一个是int m n中间应该有逗号,第二个是swtich拼写有错误,第三个是打印输入语句printf("x=%d,y=%d",x,y)有误。修正后程序的运行结果是:x=6,y=6。代码运行结果如下图所示:程序运行过程解析:1、完成变量的赋值,其中有x=1,y=1,m=1,n=1。2、执行第一...

C语言编程问题,找出其中的错误,并说明理由
答:一共两个错误:1. 需要在开始#include<math.h>,因为后面的fabs库函数的声明包含在这个头文件中 2.float root(float x1;float x2) /*定义root函数,求近视根*/ 参数用,分隔,不是用;,所以改为:float root(float x1,float x2) /*定义root函数,求近视根*/ 下面是修改后的代码:in...