99偷拍视频精品区一区二,口述久久久久久久久久久久,国产精品夫妇激情啪发布,成人永久免费网站在线观看,国产精品高清免费在线,青青草在线观看视频观看,久久久久久国产一区,天天婷婷久久18禁,日韩动漫av在线播放直播

C語言小練習(6)-創新互聯

目錄

成都創新互聯公司-專業網站定制、快速模板網站建設、高性價比洛隆網站開發、企業建站全套包干低至880元,成熟完善的模板庫,直接使用。一站式洛隆網站制作公司更省心,省錢,快速模板網站建設找我們,業務覆蓋洛隆地區。費用合理售后完善,10年實體公司更值得信賴。

//完全平方數且其中兩位數字兩相等

//回文數

//求a+aa+aaa+aaaa+aaaaa+……的和,其中a是一個數字

//喝汽水問題

//上三角矩陣判斷

//有序數列合并

//有序數列判斷

//奇偶排序:奇在前,偶在后


//完全平方數且其中兩位數字兩相等

編寫程序尋找既是完全平方數,又有兩位數字相同的三位正整數,例如121、144等。要求統計滿足該條件的整數個數,并從大到小打印這些整數。

#define _CRT_SECURE_NO_WARNINGS
#includeint main()
{
	int num = 0;
	for (num = 100; num<= 999; num++)
	{
		int i = 10;
		while(i*i<=num)//先找到平方數,再看是不是有兩個相等,可以提高效率
		{
			int bai = num / 100;
			int ge = num % 10;
			int shi = (num - 100 * bai - ge) / 10;//孩子在這里卡了好久嗚嗚嗚,千萬別忘了 /10 !!
			if (num == i * i) 
				if(bai == shi || bai == ge || shi == ge)
			    {
				    printf("%d ", num);
			    }
			i++;
		}
	}
	return 0;
}
//回文數

回文是指正反序文字相同,如,LeveL,若是則輸出“Yes”,否則輸出“No”

#define _CRT_SECURE_NO_WARNINGS
#includeint main()
{
	char arr[10];
	printf("請輸入一個字符串:");
	scanf("%s", arr);
	int sz = sizeof(arr) / sizeof(arr[0]);
	int left = 0;
	int right = sz - 1;
	int flag = 1;
	for (left = 0, right = sz - 1; left<= right; left++, right--)
	{
		if (arr[left] != arr[right])//只要有一對不同,跳出循環
		{
			flag = 0;
          break;
		}
	}
	if (flag)
	{
		printf("Yes\n");
	}
	else
	{
		printf("No\n");
	}
	return 0;
}
//求a+aa+aaa+aaaa+aaaaa+……的和,其中a是一個數字

這題思路巨多,可以a*1+a*11+a*111+……,也可以從后往前加,每次 / 10,等等。

int main()
{
	int n = 0;//總共幾項
	int a = 0;//a+aa+aaa+……
	scanf("%d %d", &a, &n);
	int sum = 0;//計算n項的和
	int i = 0;
	int k = 0;//k為其中一項
	for (i = 0; i< n; i++)//循環計算每一項
	{
		k = k * 10 + a;
		sum += k;
	}
	printf("%d\n", sum);
	return 0;
}

//喝汽水問題

喝汽水,1瓶汽水1元,2個空瓶可以換一瓶汽水,給20元,可以買多少汽水

其實由數學歸納法不難得出 total = empty * 2 - 1 ,不過這樣這題就沒有意義了,這里用點不一樣的~

#define _CRT_SECURE_NO_WARNINGS
#includeint main()
{
	int money = 0;//你有多少錢
	int total = 0;//一共能買多少瓶
	int empty = 0;//空瓶數量
	scanf("%d", &money);
	total = money;//一開始買了多少瓶
	empty = money;//一開始喝完后空瓶的數量

	//從這里開始漫漫環保路(省錢路)
	while (empty >= 2)//只要空瓶剩兩個以上就可兌換
	{
		total += (empty / 2);//空瓶能兌換的汽水
		empty = empty / 2 + empty % 2;//前面是兌換后喝完的空瓶,后面是兌換前落單的空瓶
	}
	printf("%d\n", total);
	return 0;
}
//上三角矩陣判斷

對角線以下元素均為0則是上三角矩陣,如:

1 2 3? ? ? ? ?

0 4 5? ? ? ? ?

0 0 6

#define _CRT_SECURE_NO_WARNINGS
#includeint main()
{
	printf("請問想輸入幾行幾列?:");
	int n = 0;
	scanf("%d", &n);
	int arr[10][10];
	printf("請輸入矩陣:):\n");
	int i = 0;
	int j = 0;
	//輸入
	for (i = 0; i< n; i++)
	{
		for (j = 0; j< n; j++)
		{
			scanf("%d", &arr[i][j]);
		}
	}
	//判斷
	int flag = 1;//flag我們已經用了很多次了,這里就不贅述為什么了
	for (i = 0; i< n; i++)
	{
		//觀察可知滿足條件的矩陣中對角線下 j 都小于 i
		for (j = 0; j< i; j++)
		{
			if (arr[i][j] != 0)
			{
				flag = 0;
				goto end;//break只能跳出一層循環,而goto end 想去哪就去哪
			}            //哦吼吼 ,新用法,有沒有學到??
		}
	}
end://注意這里是冒號不是分號!!!
	printf("是否為上三角矩陣?:");
	if (flag)
	{
		printf("yes\n");
	}
	else
	{
		printf("no\n");
	}
  return 0;
}

//有序數列合并

將兩組有序數列合并?

方法很多,可以直接現將兩組數組存入新數組中再排序,不過這樣原數組有序無序都不重要了,這里我們物盡其用,既然原數組已經有序,就可以邊比較邊排列

#define _CRT_SECURE_NO_WARNINGS
#includeint main()
{
	int arr1[10];
	int arr2[10];
	int arr3[20];//數組3元素是前兩數組元素之和
	int m = 0;
	int n = 0;
	printf("數組1和數組2分別有幾個元素?:");
	scanf("%d%d", &m, &n);
	int i = 0;
	int j = 0;
	int k = 0;
	//輸入
	printf("請輸入第一個數組:");
	for (i = 0; i< m; i++)
	{
		scanf("%d", &arr1[i]);
	}
	printf("請輸入第二個數組:");
	for (i = 0; i< n; i++)
	{
		scanf("%d", &arr2[i]);
	}
	//邊比較邊合并
    i = 0;//這一步千萬不能少!!!
	while (i< m && j< n)//前提條件:數組訪問不會越界
	{
		if (arr1[i]< arr2[j])
		{
			arr3[k] = arr1[i];
			i++;
			k++;
		}
		else
		{
			arr3[k] = arr2[j];
			j++;
			k++;
		}
	}
	if (i == m)//arr1先訪問完
	{
		//把arr2中剩余元素放在arr3中
		while (j< n)
		{
			arr3[k] = arr2[j];
			j++;
			k++;
		}
	}
	else//arr2先訪問完
	{
		//把arr1中剩余元素放在arr3中
		while (i< m)
		{
			arr3[k] = arr1[i];
			i++;
			k++;
		}
	}
	//打印
	for (k = 0; k< m + n; k++)
	{
		printf("%d ", arr3[k]);
	}
	return 0;
}

//有序數列判斷

判斷一組數是否有序,相同也算有序?

#define _CRT_SECURE_NO_WARNINGS
#includeint main()
{
    int n = 0;
    scanf("%d", &n);
    int arr[10];
    int i = 0;
    //還是用flag,我愿稱之為flag萬能法
    int flag1 = 0;//標記升序
    int flag2 = 0;//標記降序

    for (i = 0; i< n; i++)
    {
        scanf("%d", &arr[i]);
        if (i >0)//從第二個數開始就可以和第一個數比較了
        {
            //如果一直升序:flag1=1,flag2=0
            if (arr[i - 1]< arr[i])
            {
                flag1 = 1;
            }
            //如果一直降序:flag1=0,flag2=1
            else if (arr[i - 1] >arr[i])
            {
                flag2 = 1;
            }
        }
    }
    if (flag1 + flag2< 2)//即等于0或等于1
        printf("sorted\n");
    else
        printf("unsorted\n");
    return 0;
}

//奇偶排序:奇在前,偶在后

將一組數組中奇數放在前面,偶數放在后面

不強調新數組奇偶數有序

#define _CRT_SECURE_NO_WARNINGS
#includevoid move(int arr[], int sz)
{
	int left = 0;
	int right = sz - 1;
	//從前往后找偶數,從后往前找奇數
	while (left< right)
	{
		//找偶數
		while ((left< right) && (arr[left] % 2 == 1))
		{
			left++;
		}
		//找奇數
		while ((left< right) && (arr[right] % 2 == 0))
		{
			right--;
		}
		//奇偶交換
		if (left< right)
		{
			int tmp = arr[left];
			arr[left] = arr[right];
			arr[right] = tmp;
			left++;
			right--;
		}
	}
}
int main()
{                      
	int arr[10] = { 0 };
	printf("請輸入十個整數:");
	int i = 0;
	int sz = sizeof(arr)/sizeof(arr[0]);
	for (i = 0; i< sz; i++)
	{
		scanf("%d", &arr[i]);
	}
	move(arr, sz);
	for (i = 0; i< sz; i++)
	{
		printf("%d ", arr[i]);
	}
	return 0;
}

j

好長時間沒有更新小練習了,這七道題中有些題有一點點小難度,一起加油吧!!

你是否還在尋找穩定的海外服務器提供商?創新互聯www.cdcxhl.cn海外機房具備T級流量清洗系統配攻擊溯源,準確流量調度確保服務器高可用性,企業級服務器適合批量采購,新人活動首月15元起,快前往官網查看詳情吧

網頁題目:C語言小練習(6)-創新互聯
文章轉載:http://www.yijiale78.com/article8/pcsip.html

成都網站建設公司_創新互聯,為您提供網站內鏈App開發ChatGPT定制網站Google做網站

廣告

聲明:本網站發布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網站立場,如需處理請聯系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經允許不得轉載,或轉載時需注明來源: 創新互聯

小程序開發