新聞中心
C語言求兩個函數(shù)大小
問題1:
十多年的保亭黎族網(wǎng)站建設(shè)經(jīng)驗,針對設(shè)計、前端、開發(fā)、售后、文案、推廣等六對一服務(wù),響應(yīng)快,48小時及時工作處理。網(wǎng)絡(luò)營銷推廣的優(yōu)勢是能夠根據(jù)用戶設(shè)備顯示端的尺寸不同,自動調(diào)整保亭黎族建站的顯示方式,使網(wǎng)站能夠適用不同顯示終端,在瀏覽器中調(diào)整網(wǎng)站的寬度,無論在任何一種瀏覽器上瀏覽網(wǎng)站,都能展現(xiàn)優(yōu)雅布局與設(shè)計,從而大程度地提升瀏覽體驗。創(chuàng)新互聯(lián)從事“保亭黎族網(wǎng)站設(shè)計”,“保亭黎族網(wǎng)站推廣”以來,每個客戶項目都認真落實執(zhí)行。
函數(shù)類型是int,應(yīng)該加上
return
表達式;
問題2:
用主函數(shù)中的a,b,c當然是可以的,他們都是局部變量,在不同函數(shù)里邊同名是沒關(guān)系的
void表示空類型,void型的函數(shù)沒有返回值,當前的main函數(shù)不就沒有返回值嗎?所以用void
附加問題:
用數(shù)組存儲,然后進行排序
c語言 函數(shù) 數(shù)組 比較大小
我知道你為什么會錯了,因為你輸入數(shù)據(jù)的方式不對,正確的如:(3.5,4.5\n)就可以了,你么有好的習慣,也有么調(diào)式的經(jīng)驗,如果你輸入錯誤如:(3.5 4,5)或者(3,5 回車 4,5) 就會出錯,因為你的b變量沒有得到數(shù)據(jù)或者數(shù)據(jù)溢出了,調(diào)試的結(jié)果是這樣的 b= -1.0737418e+008 float,
正確的代碼如:scanf("%f,%f,",a,b); (3.5,4.5)比較等于4,注意是道號,輸入也要加道號
正確的代碼如:scanf("%f %f,",a,b); (3.5 4.5)比較等于4 ,%f后面是空格,你輸入的數(shù)后也需要是空格或者回車
你這代碼錯太多了,比如float比較的是兩個實數(shù),但你實際是int 類型結(jié)果,所以你的代碼只是用與2個int類型的整數(shù)比較,可以看看郝斌的C語言視頻有詳細講這個Max函數(shù)的
一起學習,謝謝
編寫一個C語言函數(shù),比較兩個字符串的大小
#includelt;stdio.hgt;
#define N 100
int input(char*a,char*b)//輸入兩個字符串
{
printf("Input the first information:\n");
fgets(a,N,stdin);
printf("Input the secend information:\n");
fgets(b,N,stdin);
}
int my_strcmp(char*a,char*b)//比較字符串每個字符的大小
{
while((*a!='\0')(*b!='\0'))
{
if(*agt;*b)
{
return 0;
}
else if(*alt;*b)
{
return 1;
}
else
{
a++;
b++;
}
}
if((*a=='\0')(*b!='\0'))//字符串b比字符串a(chǎn)長
{
return 1;
}
else if((*a!='\0')(*b=='\0'))//字符串a(chǎn)比字符串b長
{
return 0;
}
else
{
return 2;
}
}
int main()
{
char a[N]={0};
char b[N]={0};
int net2=0;
input(a,b);//調(diào)用輸入函數(shù)
net2=my_strcmp(a,b);//調(diào)用比較大小函數(shù)
if(0==net2)//輸出大小
{
printf("agt;b\n");
}
else if(1==net2)
{
printf("alt;b\n");
}
else
{
printf("a=b\n");
}
return 0;
}
擴展資料:
一、return在函數(shù)中的作用
我們?nèi)绻麑⒑瘮?shù)看做一個加工廠,參數(shù)就是我們向加工廠投入的原料,具體的函數(shù)功能實際上就是加工的過程,而return語句代表返回值,就是加工廠在實現(xiàn)加工之后給“投資人”的成品。
二、return語句的特點
1、在函數(shù)當中,遇到return語句之后就意味著函數(shù)運行的結(jié)束,在此之后的代碼是不運行的。
2、它不支持任何運算也沒有任何內(nèi)建方法,和任何其他的數(shù)據(jù)類型比較是否相等時永遠返回false,也可以將None賦值給任何變量。
3、執(zhí)行到return語句時,會退出函數(shù),return之后的語句不再執(zhí)行。但將return語句放在try語句塊中,是個例外。
三、return的默認值:return函數(shù)默認的返回值為undefined。
c語言中函數(shù)名代表函數(shù)地址,那函數(shù)的大?。ň褪呛瘮?shù)指令在內(nèi)存中的字節(jié)數(shù))怎么求?請解釋一下
以在linux下為例,適用gcc編譯一個名為test.c的文件,文件里面有個函數(shù)定義void test(void);
#include "stdio.h"
void test(void)
{
printf("test!!!\n");
}
int main(int arg, void *args[])
{
test();
return 0;
}
編譯命令gcc -o test test.c 生成test可執(zhí)行文件。
用readelf -s test命令可以讀出test文件里面的各個段的大小。
Symbol table '.dynsym' contains 6 entries:
Num: Value Size Type Bind Vis Ndx Name
0: 00000000 0 NOTYPE LOCAL DEFAULT UND
1: 00000000 401 FUNC GLOBAL DEFAULT UND puts@GLIBC_2.0 (2)
2: 00000000 391 FUNC GLOBAL DEFAULT UND __libc_start_main@GLIBC_2.0 (2)
3: 0804845c 4 OBJECT GLOBAL DEFAULT 14 _IO_stdin_used
4: 00000000 0 NOTYPE WEAK DEFAULT UND _Jv_RegisterClasses
5: 00000000 0 NOTYPE WEAK DEFAULT UND __gmon_start__
Symbol table '.symtab' contains 71 entries:
Num: Value Size Type Bind Vis Ndx Name
0: 00000000 0 NOTYPE LOCAL DEFAULT UND
1: 08048114 0 SECTION LOCAL DEFAULT 1
2: 08048128 0 SECTION LOCAL DEFAULT 2
3: 08048148 0 SECTION LOCAL DEFAULT 3
4: 08048174 0 SECTION LOCAL DEFAULT 4
5: 080481d4 0 SECTION LOCAL DEFAULT 5
6: 08048232 0 SECTION LOCAL DEFAULT 6
7: 08048240 0 SECTION LOCAL DEFAULT 7
8: 08048260 0 SECTION LOCAL DEFAULT 8
9: 08048268 0 SECTION LOCAL DEFAULT 9
10: 08048280 0 SECTION LOCAL DEFAULT 10
11: 08048298 0 SECTION LOCAL DEFAULT 11
12: 080482d8 0 SECTION LOCAL DEFAULT 12
13: 0804843c 0 SECTION LOCAL DEFAULT 13
14: 08048458 0 SECTION LOCAL DEFAULT 14
15: 08048468 0 SECTION LOCAL DEFAULT 15
16: 0804946c 0 SECTION LOCAL DEFAULT 16
17: 08049474 0 SECTION LOCAL DEFAULT 17
18: 0804947c 0 SECTION LOCAL DEFAULT 18
19: 08049480 0 SECTION LOCAL DEFAULT 19
20: 08049548 0 SECTION LOCAL DEFAULT 20
21: 0804954c 0 SECTION LOCAL DEFAULT 21
22: 08049564 0 SECTION LOCAL DEFAULT 22
23: 08049570 0 SECTION LOCAL DEFAULT 23
24: 00000000 0 SECTION LOCAL DEFAULT 24
25: 00000000 0 SECTION LOCAL DEFAULT 25
26: 00000000 0 SECTION LOCAL DEFAULT 26
27: 00000000 0 SECTION LOCAL DEFAULT 27
28: 080482fc 0 FUNC LOCAL DEFAULT 12 call_gmon_start
29: 00000000 0 FILE LOCAL DEFAULT ABS crtstuff.c
30: 0804946c 0 OBJECT LOCAL DEFAULT 16 __CTOR_LIST__
31: 08049474 0 OBJECT LOCAL DEFAULT 17 __DTOR_LIST__
32: 0804947c 0 OBJECT LOCAL DEFAULT 18 __JCR_LIST__
33: 08049570 1 OBJECT LOCAL DEFAULT 23 completed.4583
34: 0804956c 0 OBJECT LOCAL DEFAULT 22 p.4582
35: 08048320 0 FUNC LOCAL DEFAULT 12 __do_global_dtors_aux
36: 08048354 0 FUNC LOCAL DEFAULT 12 frame_dummy
37: 00000000 0 FILE LOCAL DEFAULT ABS crtstuff.c
38: 08049470 0 OBJECT LOCAL DEFAULT 16 __CTOR_END__
39: 08049478 0 OBJECT LOCAL DEFAULT 17 __DTOR_END__
40: 08048468 0 OBJECT LOCAL DEFAULT 15 __FRAME_END__
41: 0804947c 0 OBJECT LOCAL DEFAULT 18 __JCR_END__
42: 08048414 0 FUNC LOCAL DEFAULT 12 __do_global_ctors_aux
43: 00000000 0 FILE LOCAL DEFAULT ABS test.c
44: 08049480 0 OBJECT GLOBAL DEFAULT 19 _DYNAMIC
45: 08048458 4 OBJECT GLOBAL DEFAULT 14 _fp_hw
46: 0804946c 0 NOTYPE GLOBAL HIDDEN ABS __fini_array_end
47: 08049568 0 OBJECT GLOBAL HIDDEN 22 __dso_handle
48: 0804840c 5 FUNC GLOBAL DEFAULT 12 __libc_csu_fini
49: 00000000 401 FUNC GLOBAL DEFAULT UND puts@@GLIBC_2.0
50: 08048280 0 FUNC GLOBAL DEFAULT 10 _init
51: 0804837c 24 FUNC GLOBAL DEFAULT 12 test
52: 080482d8 0 FUNC GLOBAL DEFAULT 12 _start
53: 0804946c 0 NOTYPE GLOBAL HIDDEN ABS __fini_array_start
54: 080483bc 79 FUNC GLOBAL DEFAULT 12 __libc_csu_init
55: 08049570 0 NOTYPE GLOBAL DEFAULT ABS __bss_start
56: 08048394 40 FUNC GLOBAL DEFAULT 12 main
57: 00000000 391 FUNC GLOBAL DEFAULT UND __libc_start_main@@GLIBC_
58: 0804946c 0 NOTYPE GLOBAL HIDDEN ABS __init_array_end
59: 08049564 0 NOTYPE WEAK DEFAULT 22 data_start
60: 0804843c 0 FUNC GLOBAL DEFAULT 13 _fini
61: 0804946c 0 NOTYPE GLOBAL HIDDEN ABS __preinit_array_end
62: 08049570 0 NOTYPE GLOBAL DEFAULT ABS _edata
63: 0804954c 0 OBJECT GLOBAL HIDDEN 21 _GLOBAL_OFFSET_TABLE_
64: 08049574 0 NOTYPE GLOBAL DEFAULT ABS _end
65: 0804946c 0 NOTYPE GLOBAL HIDDEN ABS __init_array_start
66: 0804845c 4 OBJECT GLOBAL DEFAULT 14 _IO_stdin_used
67: 08049564 0 NOTYPE GLOBAL DEFAULT 22 __data_start
68: 00000000 0 NOTYPE WEAK DEFAULT UND _Jv_RegisterClasses
69: 0804946c 0 NOTYPE GLOBAL HIDDEN ABS __preinit_array_start
70: 00000000 0 NOTYPE WEAK DEFAULT UND __gmon_start__
其中,
51: 0804837c 24 FUNC GLOBAL DEFAULT 12 test
這行0804837c就是test()函數(shù)的起始地址,24就是test()函數(shù)的指令靜態(tài)存儲空間。
c語言,比較n個函數(shù)大小,循環(huán)讀入?但總是少讀一次
你程序的問題是
scanf("%d",n);加gets(array[i]);混用,scanf時,輸入緩沖中會留下一空行,你gets等到的第一行紿終是空行
所以要改
for(i=0;i=n;i++)
為
fflush(stdin);
//清輸入緩沖
for(i=0;in;i++)
//0~n才是n行,或=n就是n+1行了
另外,你的幾個puts(array[0]);...沒意義
還有最后
char
maxstr....返回不對
你定義的是字符char,而實際返回的是字符數(shù)組char
[]
C語言函數(shù)比較大小
代碼如下:
#include?stdio.h
#include?stdlib.h
int?max(int?a,?int?b)?
{
return?a??b???a?:?b;
}
int?main()
{
int?i,?m,?n;
scanf("%d",?m);
for?(i?=?1;?i??8;?i++)?{
scanf("%d",?n);
m?=?max(m,?n);
}
printf("最大數(shù):%d\n",?m);
system("pause");
return?0;
}
運行結(jié)果:
新聞名稱:c語言查看函數(shù)的大小 c語言判斷兩個數(shù)的大小
本文鏈接:http://fisionsoft.com.cn/article/hicips.html