當前位置:首頁 » 編程語言 » c語言changep
擴展閱讀
webinf下怎麼引入js 2023-08-31 21:54:13
堡壘機怎麼打開web 2023-08-31 21:54:11

c語言changep

發布時間: 2022-12-19 22:15:53

1. c語言。寫一個函數,change(int a[][4]),要求在主函數中輸入一個4行列的矩陣

#include<stdio.h>
#defineN4

voidchange(inta[][N],intm){
inti,j,t;
for(i=0;i<m;++i){
for(j=i+1;j<N;++j){
t=a[i][j];
a[i][j]=a[j][i];
a[j][i]=t;
}
}
}

intmain(){
inti,j,a[N][N];
printf("輸入4*4個整數(空格隔開) ");
for(i=0;i<N;++i)
for(j=0;j<N;++j)
scanf("%d",&a[i][j]);
change(a,N);
printf("轉置後: ");
for(i=0;i<N;++i){
for(j=0;j<N;++j)
printf("%d",a[i][j]);
printf(" ");
}
return0;
}

2. 求問個c語言問題

雙向鏈表 肯定不能只有兩種節點 這個只是交換一下指針,並沒有交換值

3. C語言中如何實現字元串的反轉

#include<stdio.h>
#include<string.h>

string_change(char*p)
{
inti,len;
chartemp;
len=strlen(p);

//printf("%d ",len);
//testprintf("%d ",len);

for(i=0;i<(len/2);i++)
{
temp=p[i];
p[i]=p[len-1-i];
p[len-1-i]=temp;
}
}

intmain(void)
{
chara[20]="1234567890";

printf("%s ",a);
string_change(a);
printf("%s ",a);

return0;
}

兩個明顯的誤解:

  1. char* a="12***"; 這樣定義是錯誤的。這樣 a指向字元串常量的指針。而字元串常量是不能改變的。所以停止運行。

  2. c中數組是從0開始編號的。所以字元串最後一個字元是a[len-1];

4. C語言:定義一個CHANGE函數,怎麼printf後還是跟實參一樣啊

這個值是值傳遞的,是不會改變值的。
類似於這樣;
函數調用時
change(int e = x, int d = y)
裡面執行的是
c = e; e = d; d =c;
它換的是e d這兩個變數,你在change里列印是正確的,而不是x和y;

5. C語言編程:編寫一個函數change,要求它能將一個整數字元串轉換成一個整數。如將「2345」轉換成2345.

#include <stdio.h>
#include <math.h>
#include <string.h>
int change(char *a)
{
int i;
int num=0;
for(i=0;a[i];i++)
num+=(a[i]-'0')*pow(10,(strlen(a)-1-i));
return num;
}

main()
{
char a[10];
int num;
gets(a);
num=change(a);
printf("%d",num);
}

6. c語言 vodi change(pi) int *pi;{ *p+=2; pi+=2;*pi+=2; }

1、vodi change(pi)改為 void change(pi)
2、*p+=2;改為*pi+=2;
最後輸出為4

7. C語言:編寫一個函數change,要求它能將一個整數字元串轉換成一個整數。(用實參與形參來做)

#include<stdio.h>

void change(char * pp)
{
int a=0;
char * temp=pp;
while(*temp!='\0')
a=a*10+*temp++-48;
printf("%d\n",a);
}

void main()
{
char * p="12345";
change(p);
}

在自己機器上運行成功的代碼,自己寫的,給你參考

8. 在C語言中的 交換指針地址問題

值傳遞在函數調用過程中,函數內部將參數拷貝一份,而並不改變元參數的值。而指針傳遞,才在函數內部改變傳入參數的值。如果你要傳入的參數是指針,可以改變的是指針指向的具體內容的值,而你如果要在函數內部改變指針的值,你需要傳入的是指針的地址,也就是指針的指針。將你的Change函數的參數改為(int **p, int **q), 然後再調用的時候改為change(&p, &q)即可。
希望對你又幫助。

9. c語言 數字逆序相加

scanf("%s %s",&p,&q);
應改為
scanf("%s %s",p,q);

pow應該自己寫次方。我以前也是第一次用pow的時候不知道pow計算的是浮點型有精度誤差,強行int結果WA了。。

10. 求大神幫忙解釋一下在這里C語言中 change的作用和怎麼用

change(a, 5);第一參數指向數組a,第二個參數是這個數組長度
那麼*(b+i)轉換一下形式等於b[i],b又指向a,所以*(b+i)=a[i]
*(b+1) = *(b+i)+5 等價於a[1]=a[i]+5
不知道是不是寫錯了,如果是*(b+i) = *(b+i)+5的話,就是a數組每個元素加5