如何在Turbo C IDE中查看程序的输出?

如何在C中打印#include #include #include void main() { printf(“#include”); } 如何获得输出 #include 你必须把getch(); 然后按Ctrl + f9而不是alt + f5

如何在一个分配C中动态分配2D数组

你能帮我弄清楚如何在一次分配呼叫中分配2Darrays吗? 我试着做: int ** arr =(int **)malloc(num * num * sizeof(int *)); 但它不起作用。 num是行和列。

打印后出现奇怪的分段错误

写了一个简单的交换程序,效果很好; 但是在打印完所有内容后会出现分段错误 。 #include void swap(int* p1,int* p2){ int* temp; *temp = *p1; *p1 = *p2; *p2 = *temp; } int main(){ int a,b; a = 9; b = 8; printf(“%d %d \n”,a,b); swap(&a,&b); printf(“%d %d \n”,a,b); return 0; } 输出: 9 8 8 9 Segmentation fault 我应该简单地忽略这一点并继续前进或者是否有一些非常奇怪的事情发生?

隐式类型转换是否会更改变量的大小

例如, #include int main (void) { int x = 5; double y = 6; int z = x+y; printf(“size of z = %d bytes”,sizeof(z)); return 0; } 输出是4个字节,为什么不将它转换为double并将8个字节的内存作为double。

骑士的巡回算法

所以我必须编写这个算法(这个版本不需要在骑士开始的同一个地方结束),我让它工作,但它太慢了。 对于size = 8,它适用于起始位置x = 0和y = 0,但是如果我尝试将x和y操纵为例如2和4,则它在几分钟后不会结束。 有人可以帮忙吗? #include #define size 8 int ruch_x[]={ -1, 1, -2, 2, -2, 2, -1, 1}; //arrays of possible knight moves, for example 2nd move is [1,2]// int ruch_y[]={ 2, 2, 1, 1, -1, -1, -2, -2}; int done(int szach[][size]) { for(int i=0;i<size;i++) { for(int j=0;j<size;j++) { if(szach[i][j]==0) […]

使用数组读取文件

我要做的是打开一个文件,读取文件中的信息,询问用户一系列数据,并计算每个月中属于该范围的天数百分比。 该文件是一个文件,其中包含每个月每天的天气数据(温度),历经数年。 我在使用数组启动程序时遇到困难,我不知道如何使用该数组从文件中获取信息,然后计算并存储我需要的信息。 感谢任何帮助,这是我的代码到目前为止: #include int main() { int range[12], total[12], i, cold, hot, sum, input, month, day, year; float avg, temp; char filename[20]; printf(“Tell me about your preferred temperature for flying:\n”); printf(“What is the coldest temperature you can fly in?\n”); scanf(“%d”, &cold); printf(“What is the hottest temperature you can fly in?\n”); scanf(“%d”, &hot); FILE […]

for循环运行的时间比指定的多吗?

所以我的代码所做的是它接收一个数字列表并输出所有数字的连续滚动平均值。 我的scanf函数运行了一个额外的时间,所以我只是把它放入零。 我怎样才能解决这个问题? 这是我有的: #include #include #include int main(){ int i,n; double numbers[100]; double previous[100]; double x[100]; double mean[100]; double old_average[100]; double new_average[100]; printf(“Total amount of numbers: “); scanf(“%d\n”, &n); for (i=1; i<n+1; i++){ scanf("%lf\n", &numbers[i]); } old_average[1] = numbers[1] / 1; for (i=1; i<n+1; i++){ new_average[i] = (((old_average[i] * (i)) + numbers[i+1]) / (i+1)); […]

在C编程中将2个数组复制到1个数组中

如何将2个单独的2D数组复制到1个数组中,我在下面描述了我的意思: 我有一个数组:a,b,c我有第二个数组:d,e,f 我希望第三个数组同时具有上述数组:第三个数组:a,b,c,d,e,f 到目前为止,我的代码只是获取两个数组的值,并在打印第三个数组时注释掉: #include #include #include int main(){ int i,j,count; char ar1[3][10]={“a”,”b”,”c”}; char ar2[3][10]={“d”,”e”,”f”}; char ar3[6][10]; for (i=0;i<3;i++){ printf("%s\n",ar1[i]); } for (i=0;i<3;i++){ printf("%s\n",ar2[i]); } printf('new array:\n'); // for (i=0;i<6;i++) // printf("%s\t\n",ar3[i]); }

微控制器中的易失性关键字

volatile关键字告诉编译器不要优化带前缀的变量。 变量可能在运行时由未知源(编译器不知道)可能由外部中断等改变。 volatile还有其他优势吗? volatile是否适用于从文件中读取?

将一个文件复制到另一个文件(Unix / C)?

我编写了以下代码将一个文件复制到另一个文件。 虽然代码有效,但代码仍会打印错误消息。 为什么是这样 ? 我是Unix和C编程的完全初学者(虽然之前我曾使用过C ++),所以尽可能详细的任何帮助都会很棒。 谢谢 ! int main(int argc, char *argv[]) { int n; char buf[4096]; while ((n=read( open(argv[1], O_RDONLY) , buf, 4096))>0) { if (write(creat(argv[2], S_IREAD | S_IWRITE ), buf, n)!=n) printf(“Error writing to file.\n”); } if (n<0) printf("Error reading from file.\n"); exit(0); }