北理樂學c語言
⑴ c語言 整數編號
這是你原來的方法,我改了兩行,
一個是put[j]=str[i],這一行要改成put[j]=str[i]-'0',這是從char 到 int的轉換,如果不變就成了把put[j]賦值成字元型str[i]的值了,
另一個在後面那個函數,return have使用之後,後面的代碼就不執行了,就好象短路一樣,
要放在後面,或是有條件的返回
可是改了這兩處之後還是不對,排出來結果差的太多,好象是你的冒泡內部的問題,要重新換種方法試試..我對排序很外行,查不出來根本所在
#include <stdio.h>
struct nn
{ int no;
int num;
};
typedef struct nn DATA;
int number( char * , DATA []);
int main( )
{
DATA b[100];
char sa[500]; //
int i, n;
gets( sa );
n = number( sa, b );
for ( i=0; i<n; i++ )
printf("%d %d\n", b[i].num, b[i].no );
return 0;
}
//
void bubbleSort(int arr[],int n)
{
int i,j,t;
for(i=0;i<n-1;i++)
{
for(j=0;j<n-i-1;j++)
{
if(arr[j+1]<arr[j])
{
t=arr[j+1];
arr[j+1]=arr[j];
arr[j]=t;
}
}
}
}
int number( char * str, DATA b[] )
{
int put[251],anshunxu[251],bianhao[251];
int i,j=0,have;
// 得數的個數
for(i=0;str[i]!='\0';i++)
{
if(str[i]!=' ')
{
put[j]=str[i]-'0';
j++;
}
}
put[j]='\0';
have=j;
j=0;
//return have;
// 把put復制到anshunxu
for(i=0;i<have;i++)
{
anshunxu[i]=put[i];
}
// 冒泡排序
bubbleSort(anshunxu,have);
// 得到編號的數組
for(i=0;i<have;i++)
{
for(j=0;j<have;j++)
{
if(put[i]==anshunxu[j])
{
bianhao[i]=j+1;
}
}
}
bianhao[i]='\0';
for(i=0;i<have;i++)
{
b[i].num=put[i];
b[i].no=bianhao[i];
}
return have;
}
以上回答你滿意么?
⑵ c語言6-5. 兵乓球比賽的對陣方案
#include<stdio.h>
main()
{ int n,i,a[8],j;
char b[8];
scanf("%d",&n);
for(i=1;i<=n;i++)
b[i]='A'+i-1;
for(i=1;i<=n;i++)
a[i]=i;
for(j=1;j<=n;j++)
{ printf ("scheme %d:\n",j);
for (i=j;i<=n;i++)
printf ("%c pk %d\n",b[i-j+1],a[i]);
for (i=1;i<j;i++)
printf ("%c pk %d\n",b[n-j+i+1],a[i]);}
}
⑶ 學習c語言的必備軟體
XCODE(它可以編譯幾乎所有計算機語言,並且擁有在運行之前就自動報錯的功能,只能蘋果電腦使用或下載ios模擬)
Turbo C(最常用的了,很經典,操作很方便,適合windows系統)
⑷ 掃雷 c語言代碼 告訴我~~
你的意思是,自動布置雷區,然後根據雷區分布,給出正確位置和周邊數量?
⑸ 程序調試,北理c語言樂學作業
#include <stdio.h>
void reverse( char *str, int i, int j )
{
char temp;
if( i < j )
{
temp = str[i];
str[i] = str[j];
str[j] = temp;
reverse( str, i+1, j-1 );
}
return;
}
int main()
{
int n=0;
char s[100];
gets(s);
while( s[n] != '\0' )
n++;
reverse( s, 0, n - 1 ); 長度為n,但是下標最大隻到n - 1.若為n,則已經指空
puts(s);
return 0;
}
⑹ c語言,組成最大數
其實我感覺你沒有讀懂題目的考察點,你代碼我運行也成功,但是沒注釋版,有點暈
這題權目真正考察的我感覺是冒泡排序
char h[200];
int i,n=0,j;
char t;
gets(h);
for(i=0;h[i]!='