c語言問題,這個東西怎麼調,見下圖

時間 2022-05-16 22:40:08

1樓:金色潛鳥

標準的 c 語言規定:變數要先宣告後使用;在一個定義域中,宣告要寫在語句的前面,即語句要寫在宣告的後面。

函式呼叫,屬於「語句」,函式原型宣告屬於「宣告」。

c 語言 的 基本結構 是由 一個一個 函式組成,其中有一個 主函式。

寫函式呼叫語句以前,必須在它之前 已有了 函式定義,若沒出現函式定義,則要已有函式原型宣告。

可以這樣:

int fun1(int x, int y); // 函式原型宣告。有分號。

int main()

int fun1(int x, int y) // 函式定義

------------

也可以這樣:

int fun1(int x, int y) //函式定義

int main()

====

一對大括號內,也可在宣告部分 加原型宣告,語句部分,則可呼叫,例如:

int main() ;

...; }

2樓:**伺服器

這個是很正常的啊,你在函式呼叫之前宣告並且初始化相關的變數才能夠使用的,我們用vc比較少,之前用vs,後來因為電腦太卡給解除安裝了,用的dev,這個比較小,而且能夠一步步debug除錯。只能說一個編譯器有一個編譯器的規矩,你呼叫函式前需要把必要的工作都做了。

c語言題目,見下圖!

3樓:篤俠

#include

int main()

printf("s=%.2f\n",s);

return 0;}

4樓:匿名使用者

#include

int main()

int i;

float sum = 0;

int a = 1, b = 2;

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

sum += (float)b/a;

int tem = b;

b += a;

a = tem;

printf ("%f\n",sum);

return 0;

5樓:匿名使用者

main()

就是個斐波那數列。斐波那數列會了,累加求和會了,兩段程式合併到一塊不就行了?

6樓:匿名使用者

dengwo@dengwo-thinkpad-edge-e530:~/bowl/shangdongoj$ cat printhe.c

#include

int main(void)

printf("%f\n", he);

return 0;

}dengwo@dengwo-thinkpad-edge-e530:~/bowl/shangdongoj$

c語言程式設計下圖怎麼做?

7樓:自我程式設計

方法有很多種:

一、直接迴圈,通過變數計數判斷每個字元輸出的內容。缺點:邏輯繁瑣。

二、把影象看成固定長度的多行字串(最大行寬用常量或動態陣列)。

這樣兩個題目就都統一成一個思路,那就是迴圈重複列印一個字串。而這個字串在每次迴圈都改變自己的內容。

這裡,如指標移動到兩頭,程式就結束,那麼列印的就是題目二的三角形。如到兩頭再往回走,列印的就是菱形。

另外要注意:1、菱形是固定字元黑桃。而三角形是迴圈列印大寫字母。

2、字元之間是有寬度的,不能直接用%s輸出一行字串,需要迴圈輸出指定寬度字元。

因此,按照程式設計思想,輸出列印一個字串以及迴圈大寫字母這兩個功能是要重複呼叫的,要單獨寫函式。

下面是**:

#include

#define mlen 50//圖形最大行寬度

void show1();//對應題目1的菱形

void show2();//對應題目2的三角形

void showline(char lnstr,int n,int d);//列印輸出一行圖形,引數:行陣列、陣列長度、字元間隔大小

char getletter();//每次呼叫,返回a~z的一個字母,字母迴圈

int main()

show1();

show2();

return 0;

void showline(char lnstr,int n,int d)

int i;

for(i=0;iprintf("\n");

char getletter()

char b;

static char w='a';

b=w;

if(w<'z') w++;

else w--;

return b;

void show1()

int i,flag=1,n=0;

char lnstr[mlen]=,*p0=null,*p1=null;

while(n<=1 || n%2==0 || n>=mlen)

printf("請輸入菱形最大寬度n(字元個數n必須是大於1且小於%d的奇數):",mlen),scanf("%d",&n);

for(i=0;ip0=p1=&lnstr[n/2];//指標初始指向中間

while(p0<=p1)

if(flag) *p0=*p1=5,p0--,p1++;//標識為1,兩指標指向地址值變黑桃,之後分別向兩邊移動

else *p0=*p1=' ',p0++,p1--;//標識為0,兩指標指向地址值變空格,之後分別向中間移動

showline(lnstr,n,2);

兩指標移動到兩頭,開始反向移動

void show2()

int i,n=0;

char lnstr[mlen]=,*p0=null,*p1=null,*p=null;

while(n<=1 || n%2==0 || n>=mlen)

printf("請輸入三角形底邊寬度n(字元個數n必須是大於1且小於%d的奇數):",mlen),scanf("%d",&n);

for(i=0;ip0=p1=&lnstr[n/2];//指標初始指向中間

while(1)

showline(lnstr,n,2);

if(p0+1==&lnstr[0]) break;

p=p0;

while(p<=p1) *p=getletter(),p++;

//兩指標之間的地址值迴圈取大寫字母,之後分別向兩邊移動

p0--,p1++;

c語言中,我想做一個類似下圖的選擇介面要怎樣做。**在補充問題裡面。 5

在c語言**現下圖的錯誤如何解決(是什麼導致的這樣的錯誤)

8樓:風若遠去何人留

一般是出現了越界訪問, 導致堆上的資料被意外修改導致的。

具體還需要從**分析。

建議單步執行,找到出問題的**。

並看出問題**以及該行操作的地址附近空間有哪些可以訪問。

編寫一個c語言程式,輸出是下圖,注意輸出格式就是那樣,前面向右靠攏,後面向左靠攏。。。謝謝各位大神~~

9樓:匿名使用者

printf("%10d %-2d% -.9f\n", a, b, c);

c的輸出格式預設就是右邊對齊,加上- 控制字元就是左邊對齊

不過為了這麼多位的精確值,最好用double,格式是%lf

10樓:匿名使用者

#include

#include

#include

#include "right_equal.h"

main()

num = pow(num);

number = sow(number);

printf("%3d %d %.9f\n",num,i,number);

}return 0;

}int pow(int num)

float sow(float num)

11樓:匿名使用者

#include "stdafx.h"

#include

int main()

return 0;}

12樓:匿名使用者

#include

#include

void main()}

13樓:匿名使用者

前面向右靠攏,後面向左靠攏。沒看懂

c語言中,下圖三個分別是什麼函式,謝謝?

14樓:昂首都

都是string.h裡面的處理字串的函式假設a,b是兩個字串

strcpy是複製字串,比如strcpy(a,b)就是把b複製給a,b本身不變

strcmp是比較字串「大小」,比如strcmp(a,b)就是比較a,b大小,比較方式是字典序,從左到右開始找第一位不相同的字元,如果a的大於b的,就返回大於0的整數,a的小於b的就返回負數,如果兩個字串完全相等,返回0,常用if((strcmp(a,b))==0)來判斷a和b字串是不是完全相同

strcat是把兩個字串拼起來,比如strcat(a,b)就是以把a和b按a先b後的順序拼起來,最後儲存在a中,而b的值不變

15樓:岔路程式緣

三個都是字串函式

strcpy是拷貝函式

strcmp是比較函式

strcat是連線函式

這個問題怎麼用C語言指標解決呀

酷哥 include include include void main include include int main printf lenght1 d n len1 s p2 while s 0 printf lenght2 d n len2 d p s p1 while s 0 s p2 w...

C語言的問題?誰能解釋一下,C語言問題,這個程式看不明白,誰能解釋一下 謝謝

這個程式寫的不對吧?前面應該是 include include 包含標頭檔案,調入c語言函式庫 後面主函式是 main 主函式main 主函式結束 詳解 程式的功能是從鍵盤輸入一個數x,求x的正弦值,然後輸出結果。在main 之前的兩行稱為預處理命令 詳見後面 預處理命令還有其它幾種,這裡的incl...

c語言問題 這個中括號是什麼意思

小魚服裝品鑑官 該中括號為陣列標識。int a 6 就是定義一個一維陣列,這個陣列名叫做 a 共有6個元素 同理int b 6 6 就是定義一個二維陣列,這個陣列共有6 6個元素。定義之後,就可以引用該陣列的元素,但不能直接用 a 6 a此時包含的元素只有a 0 a 1 a 2 a 3 a 4 a ...