㈠ C语言排错题:下面的代码为什么不能被编译
如果是c语言的话。自己把new改为malloc就可以了
#include<stdio.h>
int m,n,i,j;
int main(void)
{
int ** A; //定义一个指向指针的指针
int i,j;
printf("Input the amount of rows and lines:");
scanf("%d%d",&m,&n);
A=new int *[m]; //开新空间
for( i=0;i<m;i++)
{
A[i]=new int[n];
}
for (i=0;i+1<=n;i++)
{
for (j=0;j+1<=m;j++)
{
printf("\nInput R%d,C%d:",i+1,j+1);
scanf("%d",&A[i][j]);
}
}
printf("\nInputing has been done.");
for (i=0;i+1<=n;i++)
{
printf("\n");
for (j=0;j+1<=m;j++)
{
printf("%d",A[i][j]);
}
}
return 0;
}
㈡ c语言中的函数可不可以单独进行编译
是可以的。
库函数是把函数放到库里,供别人使用的一种方式。函数库是由系统建立的具有一定功能的函数的集合。库中存放函数的名称和对应的目标代码,以及连接过程中所需的重定位信息。用户也可以根据自己的需要建立自己的用户函数库。
使用C语言的语句直接计算sin或cos函数,就需要编写颇为复杂的程序。因为C语言的语句中没有提供直接计算sin或cos函数的语句。又如为了显示一段文字,我们在C语言中也找不到显示语句,只能使用库函数printf。
(2)c语言不编译部分代码的方式扩展阅读
函数库的分类
1、字符串、内存和字符函数
需要的包含文件:string.h、mem.h、ctype.h或string.h;
2、数学函数
需要的包含文件:math.h;
3、动态存储分配
需要的包含文件:alloc.h或stdlib.h ;
㈢ C语言可以不用编译就被计算机识别执行对吗
C语言是高级语言,要经过编译才能被电脑识别执行。
Visual C++集成了MFC6.0,于1998发行,又称vc98。发行至今一直被广泛地用于大大小小的项目开发。但是,这个版本在WindowsXP下运行会出现问题,尤其是在调试模式的情况下(例如:静态变量的值并不会显示)。 这个调试问题可以通过打一个叫“Visual C++ 6.0Processor Pack”的补丁来解决。奇怪的是,这个网页强调用户也必须运行Windows 98、Windows NT4.0、或Windows 2000。这个C++版本对win7的兼容性非常差,有大大小小的兼容性问题。微软不推荐安装在windows7上。
希望我能帮助你解疑释惑。
㈣ C语言代码不能通过编译,求高手指点,不胜感激,在线等
问题出在这里,你把shulie函数定义在了main函数的内部,稍作修改如下:
#include <stdio.h>
#include <stdlib.h>
int shulie(int a,int b,int n)
{
int *x;
x = (int*)malloc(n*sizeof(int));
long i;
x[0]=a;
x[1]=b;
for(i=0;i<n;i++)
{
if(x[i]*x[i+1]>9)
{
x[i+2]=x[i]*x[i+1]/10;
x[i+3]=x[i]*x[i+1]%10;
}
else{
x[i+2]=x[i]*x[i+1];
}
}
return 0;
}
int main()
{
int k, a, b, q, n, i;
int shulie(int, int, int);
scanf("%d", &k);
while(k--)
{
scanf("%d%d%d", &a, &b, &q);
for(i=0;i<q;i++)
{
scanf("%d", &n);
shulie(a,b,n);
}
}
return 0;
}
㈤ c语言代码用哪个编译器都不能编译了
www.programarts.com下载个C-Free5用用吧
Dev-C++的是你配置不对,安装时的一些选项没选好,比如Dev-C++那儿安装要你选是不是要把编译器也安装了,如果你没有选,那Dev-C++只能当个语法加亮的东西了……而Codeblocks默认(好像)是没有C++编译器的。VS2012没用过……
㈥ C语言代码无法编译
你看看后台,是不是还有之前调试运行的窗口没关。再检查一下代码,看看有没有代码错误,你图片上看到的代码,只有一堆printf语句。再不行,就换个IDE把代码贴过去编译。
㈦ C语言部分代码不执行(找质数)
你没有对j初始化,所以循环中j<sqrt(100)不成立,就没有执行循环
㈧ c语言里include包含的文件,编译时是全部编译还是将部分用到的内容编译
在预处理时把代码全部放进去,编译时自然是全部编译,但是后期涉及到动态库的东西,其实有些函数没有真的被链接进来(只是地址而已),这些东西慢慢来吧
㈨ C语言程序编译时程序中的注释部分是否参加编译
可以参加。所谓注释,便是用自然语言对源代码中某些语句或方法进行说明。并且注释的内容不会被编译器编译。可以在源代码中添加任何想要添加的说明。
注释可以出现在代码中的任何位置,用来向用户提示或解释代码的含义。程序编译时,会忽略注释,不做任何处理,就好像它不存在一样。
如需要注释的内容比较多,一行写不完,如果在每一行注释中都使用//。当然这种方法比较繁琐,看起来页面也不够简洁。这时候,就需要用到多行注释。多行注释还有一种不够简洁的注释方式,那就是嵌套在代码语句中。
(9)c语言不编译部分代码的方式扩展阅读
使用注释的例子的源代码
/*
源世界整理,www.yuanshijie.top
*/
#include <stdio.h>
int main()
{
/* puts 会在末尾自动添加换行符 */
puts("http://www.yuanshijie.top");
printf("源世界博客 "); //printf要手动添加换行符
return 0;
㈩ C语言中条件编译有哪几种形式
预处理程序提供了条件编译的功能。 可以按不同的条件去编译
不同的程序部分,因而产生不同的目标代码文件。 这对于程序的移
植和调试是很有用的。
条件编译有三种形式,下面分别介绍:
1. 第一种形式:
#ifdef 标识符
程序段1
#else
程序段2
#endif
它的功能是,如果标识符已被 #define命令定义过则对程序段1
进行编译;否则对程序段2进行编译。
如果没有程序段2(它为空),本格式中的#else可以没有, 即可
以写为:
#ifdef 标识符
程序段
#endif
#define NUM ok
main(){
struct stu
{
int num;
char *name;
char sex;
float score;
} *ps;
ps=(struct stu*)malloc(sizeof(struct stu));
ps->num=102;
ps->name="Zhang ping";
ps->sex='M';
ps->score=62.5;
#ifdef NUM
printf("Number=%d\nScore=%f\n",ps->num,ps->score);
#else
printf("Name=%s\nSex=%c\n",ps->name,ps->sex);
#endif
free(ps);
}
由于在程序的第16行插入了条件编译预处理命令, 因此要根据
NUM是否被定义过来决定编译那一个printf语句。而在程序的第一行
已对NUM作过宏定义,因此应对第一个printf语句作编译故运行结果
是输出了学号和成绩。
在程序的第一行宏定义中,定义NUM表示字符串OK,其实也可以
为任何字符串,甚至不给出任何字符串,写为:
#define NUM
也具有同样的意义。 只有取消程序的第一行才会去编译第二个
printf语句。读者可上机试作。
2. 第二种形式:
#ifndef 标识符
程序段1
#else
程序段2
#endif
与第一种形式的区别是将“ifdef”改为“ifndef”。它的功能
是,如果标识符未被#define命令定义过则对程序段1进行编译, 否
则对程序段2进行编译。这与第一种形式的功能正相反。
3. 第三种形式:
#if 常量表达式
程序段1
#else
程序段2
#endif
它的功能是,如常量表达式的值为真(非0),则对程序段1 进行
编译,否则对程序段2进行编译。因此可以使程序在不同条件下,完
成不同的功能。
#define R 1
main(){
float c,r,s;
printf ("input a number: ");
scanf("%f",&c);
#if R
r=3.14159*c*c;
printf("area of round is: %f\n",r);
#else
s=c*c;
printf("area of square is: %f\n",s);
#endif
}
本例中采用了第三种形式的条件编译。在程序第一行宏定义中,
定义R为1,因此在条件编译时,常量表达式的值为真, 故计算并输
出圆面积。
上面介绍的条件编译当然也可以用条件语句来实现。 但是用条
件语句将会对整个源程序进行编译,生成的目标代码程序很长, 而
采用条件编译,则根据条件只编译其中的程序段1或程序段2, 生成
的目标程序较短。如果条件选择的程序段很长, 采用条件编译的方
法是十分必要的。
☆本章小结☆
1. 预处理功能是C语言特有的功能,它是在对源程序正式编译前由
预处理程序完成的。程序员在程序中用预处理命令来调用这些功
能。
2. 宏定义是用一个标识符来表示一个字符串,这个字符串可以是常
量、变量或表达式。在宏调用中将用该字符串代换宏名。
3. 宏定义可以带有参数,宏调用时是以实参代换形参。而不是“值
传送”。
4. 为了避免宏代换时发生错误,宏定义中的字符串应加括号,字符
串中出现的形式参数两边也应加括号。
5. 文件包含是预处理的一个重要功能,它可用来把多个源文件连接
成一个源文件进行编译,结果将生成一个目标文件。
6. 条件编译允许只编译源程序中满足条件的程序段,使生成的目标
程序较短,从而减少了内存的开销并提高了程序的效率。
7. 使用预处理功能便于程序的修改、阅读、移植和调试,也便于实
现模块化程序设计。