習題一:編寫一個模板函數Input,它要求使用者輸入一個非負數

來源:互聯網
上載者:User

// 試編寫一個模板函數I n p u t,它要求使用者輸入一個非負數,並負責驗證使用者所輸入的數是
//否真的大於或等於0,如果不是,它將告訴使用者該輸入非法,需要重新輸入一個數。在函數非
//成功退出之前,應給使用者三次機會。如果輸入成功,函數應當把所輸入的數作為引用參數返回。
//輸入成功時,函數應返回true, 否則返回f a l s e。上機測試該函數。

#include <stdio.h>

 

template<class T>
bool Input(T &a)
{
 if (a < 0)
 {
  printf("Invalid Input!/n");
  return false;
 }
 else
 {
  printf("Right Input!/n");
  return true;
 }
}

 

void main()
{
 int iInput, i=0;
 printf("Please Input an nonnegative number:");
    scanf("%f", &iInput);
 i++;
 while (!Input(iInput))
 {
  if (i >= 3)
  {
   printf("You have tried for three times,now you should exit!/n");
   break;
  }
  printf("Please Input again:");
  scanf("%f", &iInput);
  i++;
 }
}

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.